PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解
PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解
发布时间:2016-12-29 来源:查字典编辑
摘要:VC6:legacyVisualStudio6compiler,就是使用这个编译器编译的。VC9:VisualStudio2008compi...

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网页,所以还要加上下面这段

<Directory "C:/wamp/bin/php/php5.3.6/">

AllowOverride None

Options None

Order allow,deny

Allow from all

</Directory>

官方并不建议你将Non Thread Safe 应用于生产环境,所以我们选择Thread Safe 版本的PHP来使用。

XAMPP在http-xampp.conf中默认配置是使用ISAPI的方式

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类