目前最新版的PHPWAMP集成环境默认都安装了zend解密组件,下面是详情信息。
PHP线程安全和非线程安全的选择和区别。
备注:在PHP5.3以后,PHP不再有ISAPI模式,安装后也不再有php5isapi.dll这个文件。
Windows版的PHP从版本5.2.1开始有Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分,
Windows下的PHP版本分两种:线程安全版本与非线程安全版本,线程安全和非线程安全只针对windows,而 linux下没有这个区分。
第一个Windows系统下的PHP版本是PHP3.0.17(时间2000年10月20日)
那时候windows和linux版本下的PHP都是不区分线程安全与非线程安全的。
Windows下的PHP从版本5.2.1起才开始区分Thread Safe(线程安全)和None Thread Safe(NTS,非 线程安全)
而PHP5.2通常采用的解密模块是Zend Optimizer,但是从PHP 5.3.x系列起,都无法安装Zend Optimizer。
PHP 5.3.X 开始 Zend Optimizer 正式被 Zend Guard Loader 所取代了,改用 Zend Guard Loader 模块了
因此获得以下结论:
1、Zend Guard Loader必须运行在nts版的php上面,所以应该下载nts的PHP版本来安装Zend Guard Loader
2、Zend Optimizer不支持php5.3以上版本,更也不支持Windows下非线程安全FastCGI,就算是php5.2也需要使用线程安全的版本。
因为PHPWAMP的apache2.4站点管理大部分的PHP版本是采用FastCGI运行模式的,所以最好全部都采用非线程安全的PHP版本,但是Zend Optimizer并不支持非线程安全的php5.2。所以在PHPWAMP集成环境的apache2.4站点管理中,带有zend解密组件的php5.2是线程安全的PHP版本,而其他带有zend解密组件的都是非线程安全的PHP版本,如果你在apache2.4站点管理中并不打算使用带有解密组件的php5.2,你可以自定义一个非线程安全的PHP5.2。
注意事项:PHPWAMP中的apache2.4站点管理是混合运行模式,在添加站点的时候,选择默认的PHP版本就是模块运行方式,如果添加站点时选择其他版本(非默认php版本)则是FastCGI运行模式
PHPWAMP的运行模式
IIS站点管理:Fast-CGI运行模式
Nginx站点管理:Fast-CGI运行模式
apache2.2站点管理:APACHE2HANDLER的方式运行
apache2.4站点管理:Fast-CGI和APACHE2HANDLER双重混合模式运行(随意切换)
主界面默认测试站点:APACHE2HANDLER的方式运行 (仅限Apache,主界面Nginx还是Fast-CGI)