Windows Server 2016 上配置 APACHE+SSL+PHP+perl的教程详解

 更新时间:2017年7月6日 23:34  点击:2548
Windows Server 2016 上配置 APACHE+SSL+PHP+perl怎么配置?小编推荐了一篇介绍Windows Server 2016 上配置 APACHE+SSL+PHP+perl的教程,有需要的同学快来看看吧!

 

 代码如下 复制代码

<strong><span style="color:#FF0000;">安装环境</span></strong>

 谷歌云实例 Windows Server 2016

Apache   Apache/2.4.25 (win64-VC14)

PHP    php-5.6.30 (VC11 x64 Thread Safe)

PERL    ActivePerl-5.24 (Win64)

OpenSSL  openssl-1.0.2j-win64

VC14    Microsoft Visual C++ 2015(vcredist_x64)

VC11    Microsoft Visual C++ 2015(vcredist_x64)

<strong><span style="color:#FF0000;">1.安装 Apache</span></strong>

Apache/2.2 不支持php-5.3以后的版本,用最新的 Apache/2.4,由于是Win64-VC14版本,需安装 x64位版本的 VC2015运行库,即VC14

http://httpd.apache.org/download.cgi

http://www.apachelounge.com/download/VC14/binaries/httpd-2.4.25-win64-VC14.zip

解压到 D:\httpd

修改 D:\httpd\conf 和 D:\httpd\conf\extra 目录下的文件,替换 C:/apache24 到 D:/httpd

<span style="color:#FF0000;"><strong>2.安装 SSL</strong></span>

http://openssl.org

https://wiki.openssl.org/index.php/Binaries

https://slproweb.com/products/Win32OpenSSL.html

这里使用了 Apache/2.4.25 自带的 openssl ,在 D:\httpd\bin 目录 ,默认配置文件位于 C:/openssl-1.0.2j-win64/ssl/openssl.cnf

用命令建立 server.key 和 server.crt

  setpath=D:/httpd/bin

  D:

  cdD:/httpd/conf/

  copyopenssl.cnf openssl.conf

  mkdir demoCA\newcerts

  echo.>demoCA/index.txt

  echo.>demoCA/serial

  openssl genrsa-outserver.key 1024

  openssl req-new-x509-keyserver.key-outserver.crt-days3650-configopenssl.conf  

修改 D:/httpd/conf/httpd.conf 文件,去掉下面两行前面的#

#LoadModule ssl_module modules/mod_ssl.so

#Include conf/extra/httpd-ssl.conf

修改 D:/httpd/conf/extra/httpd-ssl.conf 文件,注释下面的行

#SSLSessionCache    "shmcb:d:/httpd/logs/ssl_scache(512000)"

<span style="color:#FF0000;"><strong>3.安装 perl</strong></span>

下载后安装时选第三项会自动安装到 c:/perl64 ,无需做其它修改,以后加载.pl文件时,第一行指向#!c:/perl64/bin/perl.exe

http://perl.org

http://www.activestate.com/activeperl/downloads

修改 D:/httpd/conf/httpd.conf 文件,去掉下行前面的#

#LoadModule cgi_module modules/mod_cgi.so

<span style="color:#FF0000;"><strong>4.安装 php</strong></span>

 

php 有两种版本,Thread Safe(TS) 和 Non Thread Safe(NTS) , TS 用于APACHE ,NTS 用于IIS 

由于 VC11 x64 Thread Safe 需安装 x64位版本的 VC2012运行库,即VC11,在微软官方网站搜索安装。  

 

 代码如下 复制代码

http://windows.php.net/download/

http://windows.php.net/downloads/releases/php-5.6.30-Win32-VC11-x64.zip

解压到 D:/httpd/php-5.6.30 ,把 php.ini-production改名为 php.ini

修改 D:/httpd/conf/httpd.conf 文件,增加下面的行

LoadModule php5_module"D:/httpd/php-5.6.30/php5apache2_4.dll"

PHPIniDir"d:/httpd/php-5.6.30"

AddType application/x-httpd-php.php .html .htm

如果出现找不到 D:/httpd/php-5.6.30/php5apache2_4.dll 文件的提示,可能是需要的VC运行库没有安装,或者是apache和php的版本不配。

5.到此配置结束,<span style="color:#FF0000;"><strong>使用下面的命令启动服务</strong></span> 

httpd-kinstall

httpd-kstart 

单是 httpd-kstart 不能启动服务

 

php中出现Loaded Configuration File(none)的问题怎么办?本文介绍了phpinfo()中Loaded Configuration File(none)的解决方法,遇到问题的同学可以试着解决一下

前言

单独编译php7,并安装在/usr/local/php7/中,今天开发插件修改了 php.ini 的配置信息,但是什么都没生效。

排查

通过phpinfo()查看配置信息:

发现Loaded Configuration File => (none),表明没有载入php.ini文件。然而/usr/local/php7/etc/php.ini这个文件确实是存在的。

解决

用strace去跟踪一下:

strace /usr/local/php7/sbin/php-fpm -i 2>1.log

打开文件发现:

它会去找/usr/local/lib/php.ini,我也不知道为什么,我编译是有设置--with-config-file-path=/xxx/xxx。反正找到具体路径了,把php.ini拷过去就解决了。

另外我strace /usr/local/php7/bin/php -i 2>1.log发现,如果不是php-fpm而是php,它会找/usr/local/php7/bin/php.ini,原因未知。

php遇到扫描二维码下载跳转问题怎么解决。小编分享的这篇文章介绍了php解决扫描二维码下载跳转问题的教程,希望能帮助到有需要的同学

首先我们指定一个url,比如 http://it.lovepet.vip

用这个地址生成二维码,二维码的生成方式有很多种,到网上搜搜就知道。

我们可以新建一个index.php放在改网站目录下。编辑index.php加入

 代码如下 复制代码

$agent=strtolower($agent=strtolower(_SERVER['HTTP_USER_AGENT']);

$iphone=(strpos(iphone=(strpos($agent,'iphone')) ? true : false;

$ipad=(strpos($ipad=(strpos($agent,'ipad')) ? true : false;

$android=(strpos(android=(strpos($agent,'android')) ? true : false;

if($iphone||$iphone||$ipad)

{

&emsp;&emsp;echo"<script>window.location.href='https://itunes.apple.com/cn/app/wu-han-de-tie-gong-e/id663196252?mt=8'</script>";

}

if($android){

&emsp;&emsp;echo"<script>window.location.href='http://www.lewanau.com'</script>";

}

这样用手机扫描二维码的时候,就可以通过设备来跳转不同的url了。

这篇文章介绍了PHP截取中文字符串不出现?号解决办法,当PHP截取中英文混合字符串时,最后一个汉字经常被拆成两半。感兴趣的同学可以尝试一下

本文实例讲述了PHP实现截取中文字符串不出现?号的解决方法。分享给大家供大家参考,具体如下:

当PHP截取中英文混合字符串时,最后一个汉字经常被拆成两半,例:截取字符串的前18个字

 
 代码如下 复制代码
<?php
$text="1欢迎访问sina新浪播客";
$value=substr($text, 0, 18);
echo$value."<BR>";
?>
 

输出为结果为:

1欢迎访问新浪?BR>

于是写了以下这段代码,判断如果中英文混合字符串中的汉字字节数为奇数,则少截取一个字节,保证汉字显示完整。

 
 代码如下 复制代码
<?php
$text="1欢迎访问sina新浪播客";
$value=substr($text, 0, 18);
$value_length=strlen($value);
$value_count= 0;
for($i= 0;$i<$value_length;$i++)
{
  if(ord($value{$i}) > 127)
  {
    $value_count++;
  }
}
if($value_count% 2 != 0)
{
  $value=substr($text, 0,$value_length- 1);
}
echo$value."<BR>";
?>
 

输出为结果为:

 

1欢迎访问sina新浪

 

[!--infotagslink--]

相关文章

  • Windows VPN服务器配置图文教程 超详细版

    VPN可以虚拟出一个专用网络,让远处的计算机和你相当于处在同一个局域网中,而中间的数据也可以实现加密传输,用处很大,特别是在一些大公司,分公司处在不同的区域。...2016-01-27
  • Windows批量搜索并复制/剪切文件的批处理程序实例

    这篇文章主要介绍了Windows批量搜索并复制/剪切文件的批处理程序实例,需要的朋友可以参考下...2020-06-30
  • C#创建简单windows窗体应用(加法器)

    这篇文章主要为大家详细介绍了C#创建一个简单windows窗体应用的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25
  • Powershell 查询 Windows 日志的方法

    这篇文章主要介绍了Powershell 查询 Windows 日志的方法,需要的朋友可以参考下...2020-06-30
  • C#实现windows form限制文本框输入的方法

    这篇文章主要介绍了C#实现windows form限制文本框输入的方法,涉及C#限制文本框输入的技巧,非常具有实用价值,需要的朋友可以参考下...2020-06-25
  • jquery自定义插件开发之window的实现过程

    这篇文章主要介绍了jquery自定义插件开发之window的实现过程的相关资料,需要的朋友可以参考下...2016-05-09
  • JS实现不使用图片仿Windows右键菜单效果代码

    本文实例讲述了JS实现不使用图片仿Windows右键菜单效果代码。分享给大家供大家参考,具体如下:这里演示JS不使用图片仿Windows右键菜单效果,这款代码灵活使用了文鼎字,配合CSS和JS做出了这个和系统右键菜单很相似的东东。...2015-10-23
  • C# Windows API应用之基于GetDesktopWindow获得桌面所有窗口句柄的方法

    这篇文章主要介绍了C# Windows API应用之基于GetDesktopWindow获得桌面所有窗口句柄的方法,结合实例形式分析了GetDesktopWindow函数用于获取窗口句柄的具体使用方法与相关注意事项,需要的朋友可以参考下...2020-06-25
  • Linux与Windows喜结连理

    作为一个新生事物,Linux吸引了不少眼球,但是它能否快捷、方便地与Windows资源共享,是一个很重要的问题。大家知道,Windows之间可以利用“网络邻居”来实现资源共享,而Linux...2016-11-25
  • Apache启动报错No space left on device: AH00023该怎么解决

    Apache启动报错No space left on device: AH00023错误可能是进程导致了,虽然小编不知道什么原因但网上提供的解决办法确实是可以解决我们的问题,下面来看看。对于这类错误是因为linux系统的ipc信号量造成的,apache启动时...2015-10-21
  • 利用C#修改Windows操作系统时间

    这篇文章主要介绍了利用C#修改Windows操作系统时间,帮助大家更好的利用c#操作系统,感兴趣的朋友可以了解下...2020-12-08
  • 详解Windows下安装Nodejs步骤

    本篇文章主要介绍了详解Windows下安装Nodejs步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 ...2017-05-22
  • apache配置黑名单和白名单及账户权限控制

    本文我们将分享apache配置黑名单和白名单,apache层的账户权限控制,以及apache黑名单白名单过滤功能,apache rewrite规则实现白名单。 apache配置黑名单和白名单的两...2016-09-14
  • C#3.0使用EventLog类写Windows事件日志的方法

    这篇文章主要介绍了C#3.0使用EventLog类写Windows事件日志的方法,以简单实例形式分析了C#写windows事件日志的技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • apache开启gzip详解教程

    今天在用百度工具检测时发,发现有个提示如下 原来可以开启gzip啊,因为我的是apache所以和iis不同,经过网站搜索开启方法如下 一,找到你的httpd.conf文件,打开找到如下 ...2016-01-28
  • 浅谈vue 组件中的setInterval方法和window的不同

    这篇文章主要介绍了浅谈vue 组件中的setInterval方法和window的不同,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-30
  • 解决PHPstudy Apache无法启动的问题【亲测有效】

    这篇文章主要介绍了PHPstudy Apache无法启动的问题及解决方法【亲测有效】,本文给大家总结了三种方法供大家参考,需要的朋友可以参考下...2020-10-30
  • apache http server遇到了一个问题,需要关闭

    重装系统后,重新安装了xamp,最近启动的时候经常报apache http server遇到了一个问题,需要关闭,显示如图: 解决方法:查看szModName报错的模块,然后把PHP安装目录下对应的模块...2016-01-28
  • jquery自定义插件——window的实现【示例代码】

    下面小编就为大家带来一篇jquery自定义插件——window的实现【示例代码】。小编觉得挺不错的,现在分享给大家,也给大家做个参考...2016-05-09
  • C#实现控制Windows系统关机、重启和注销的方法

    这篇文章主要介绍了C#实现控制Windows系统关机、重启和注销的方法,涉及C#调用windows系统命令实现控制开机、关机等操作的技巧,非常简单实用,需要的朋友可以参考下...2020-06-25