PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

VC6:legacy Visual Studio 6 compiler,就是使用这个编译器编译的。
VC9:Visual Studio 2008 compiler,就是用微软的VS编辑器编译的。
由于apache.org只提供VC6的版本,所以使用原版apache时只能使用VC6。(www.apachelounge.COM上有apache VC9的版本提供,应该可以和PHP VC9配合,没用过)
TS:Thread Safe 线程安全, 执行时会进行线程(Thread)安全检查,以止有新要求就启动新线程的CGI执行方式而耗尽系统资
NTS:Non Thread Safe 非线程安全, 在执行时不进行线程(Thread)安全检查

PHP的两种执行方式:ISAPI和FastCGI。

ISAPI(internet Server Application PRogramming Interface)执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择Thread Safe版本
apache中的配置方式:

#下面这个是加载TS版本的PHP必须的
LoadModule PHP5_module “xxx/PHP5apache2_2.dll”
#下面这行可有可无

AddTyPE application/x-httpd-PHP-source .PHPs
AddType application/x-httpd-PHP .PHP .PHP5 .PHP4 .PHP3 .phtML .PHPt


FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择Non Thread Safe版本。
apache中的配置方式:

#下面这两行是加载NTS版本的PHP必须的,不可以直接写成Action application/x-httpd-PHP “c:/wamp/bin/PHP/PHP3.5.6/php-cgi.exe”!
ScriptAlias /PHP/ "C:/wamp/bin/PHP/PHP3.5.6/"
Action application/x-httpd-PHP “/PHP/php-cgi.exe”

#另外,还要有之前的AddType application/x-httpd-PHP .PHP .PHP5 .PHP4 .PHP3 .phtml .PHPt,这样才能认识PHP格式的文件

#这样配置完可能还会因为权限问题而无法用php-cgi.exe解析PHP网页,所以还要加上下面这段

PHP/PHP5.3.6/">
Allowoverride None
Options None
Order allow,deny
Allow From all

官方并不建议你将Non Thread Safe 应用于生产环境,所以我们选择Thread Safe 版本的PHP来使用。
XAMPP在http-xampp.conf中认配置是使用ISAPI的方式

脚本宝典总结

以上是脚本宝典为你收集整理的PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解全部内容,希望文章能够帮你解决PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:phpvc6