问个理论类的问题,现在有些混乱了(看了很多文章)
1.PHP版本,现在有2个
1)VC9 x86 Non Thread Safe (2013-May-08 22:51:31)
2)VC9 x86 Thread Safe (2013-May-08 22:51:34)
一个非线程安全,一个线程安全;
2.PHP在服务器apache的执行方式fastCGI/模块化,(我一直用的apache)目前最新本版的Apache2.4.4 win64
看了不少文章后,得出结论:以fastCGI方式执行最优 (不知道正确与否)
据说:fastCGI是单线程执行,所以应该使用 NTS 非线程安全版本的PHP
同时官方原话:
IIS
If you are using PHP with IIS you should use the Non-Thread Safe (NTS) versions of PHP.
现在问题来了:
我要是的服务器肯定是 Apache2.4.4 win64 (目前最新的)
如果配置以fastCGI方式执行PHP,我该选择 非线程安全(NTS)还是 线程安全(TS)?
apache2.4.4 win64 配置fastCGI 怎么弄?有没有什么检查办法,查看apache究竟是什么方式(模块化还是fastCGI)执行了php
比较小白,求理论清晰的给予帮助
------解决方案--------------------有写事实你需要注意:
目前 php 并没有发行 win64 的版本
下目前发行的 x86 版本中并没有对 Apache2.4.4 的支持
fastCGI 是 CGI 的扩充
fastCGI 是一个应用程序池,他将多个 CGI 进程包裹起来进行管理
以 CGI 方式安装的 php 从 phpinfo 中看到的就是 fastCGI
具体的的配制方法,可以看一下包中的 install.txt 文件
我习惯模块方式,就不说 CGI 的配置方法了。以免误导
目前 fastCGI 有了很大改进,运行效率据说可以和模块方式媲美了
另外,在 IIS 中已经不再支持模块(ISAPI)方式了,只支持 fastCGI 方式