windows下apache和php的版本搭配是个常见的问题,这里记录一下自己的选择。如果windows下使用IIS,则忽略此文章。
apache下载地址:https://www.apachehaus.com/cgi-bin/download.plx
php下载地址:https://windows.php.net/download/

1.vc

进入下载地址后apache和php都有vc9,vc11,vc13vc15等版本选择,x86和x64就不解释,看自己的操作系统是32位还是64位进行选择。下面对vc进行一下说明:
vc.png
VC9 => Visual C++ 2008 x86|x64 Redistributable
VC11 => Visual C++ 2012 x86|x64 Redistributable
VC14 => Visual C++ 2013 x86|x64 Redistributable
VC15 => Visual C++ 2015-2019 x86|x64 Redistributable
如果你的操作系统不存在你需要下载对应的vc版本需要你另外安装对应的vc,建议直接下载操作系统对应的vc版本

2.ts和nts

ts(Thread-Safety)即线程安全,多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染php以ISAPI方式加载的时候选择这个版本.,php以ISAPI方式加载的时候选择这个版本.

nts(None-Thread Safe)即非线程安全,就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的是 脏数据php以fast cgi方式运行的时候选择这个版本,具有更好的性能;ISAPI(Internet Server Application Programming Interface), 通常是指被http服务器所加载,以服务器的模块形式运行,由微 软提出,故只能在win平台上运行,例如win下的apache,iis[据说用fast cgi 方式工作更稳定],而linux上php 则以 Apache模块或者php-fpm的方式运行。

ts和nts是在php的版本中进行选择,因为apache的工作模式是线程安全,所以php选择的也是ts的版本。
另外apache在配置php是需要使用php7apache2.4.dll(php5则是php5apache2.2.dll),如果是nts版本则没有则这个dll,因此不要下错了。

3.版本

apache2.2的版本最高支持到php5.4

php5.5以上只能使用apache2.4


飘梧
97 声望4 粉丝

宠辱不惊,闲看庭前花开花落。