1.关于PHP的VC9和VC6以及ThreadSafe和NonThreadSafe版
PHP 5.3 ForWindows,一共有四个版本,VC9×86NonThreadSafe、VC9×86ThreadSafe、VC6×86NonThreadSafe、VC6×86ThreadSafe,从PHP官网下载页面的英文choose我们可以知道如下信息:
一、PHP5.3的VC9版和VC6版
VC6就是LegacyVisualStudio6compiler,就是使用Visual Studio 6编译的。
VC9就是TheVisualStudio2008compiler,就是用微软的Visual Studio 2008编辑器编译的(使用VC9版的时候需要有C++2008的运行时环境Microsoft 2008 C++ Runtime (x86) 或 Microsoft 2008 C++ Runtime (x64) )。
那我们如何选择下载哪个版本的PHP呢?
如果你是在Windows下使用Apache+PHP的,选择VC6版;
如果你是在Windows下使用IIS+PHP的,选择VC9版。
二、PHP5.3的ThreadSafe版和NonThreadSafe版
先从字面意思上理解:
ThreadSafe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。
NonThreadSafe是非线程安全,在执行时不进行线程(Thread)安全检查。
再来看PHP的两种执行方式:ISAPI和FastCGI。
ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择ThreadSafe版本;
而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择NonThreadSafe版本。
官方并不建议你将NonThreadSafe应用于生产环境,所以我们选择ThreadSafe版本的PHP来使用。
2.Apache的openssl 和 no_ssl
apache软件同一版本有两种类型:no_ssl和openssl:
openssl多了个ssl安全认证模式,它的协议是HTTPS而不是HTTP,这就是带有SSL的服务器与一般网页服务器的区别了。
一般情况下,我们下载no_ssl版本的就ok了。
关于在win7下配置 PHP + IIS的环境,请参考: