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


Posted in PHP onApril 26, 2013

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中使用CURL伪造来路抓取页面或文件
May 04 PHP
基于php和mysql的简单的dao类实现crud操作功能
Jan 27 PHP
教你如何快捷的使用cmd访问mysql小技巧
May 26 PHP
php使用sql server验证连接数据库的方法
Dec 25 PHP
php实现ip白名单黑名单功能
Mar 12 PHP
Java中final关键字详解
Aug 10 PHP
ThinkPHP数据操作方法总结
Sep 28 PHP
php each 返回数组中当前的键值对并将数组指针向前移动一步实例
Nov 22 PHP
关于PHP转换超过2038年日期出错的问题解决
Jun 28 PHP
laravel 框架配置404等异常页面
Jan 07 PHP
php原生数据库分页的代码实例
Feb 18 PHP
php写入文件不覆盖的实例讲解
Sep 17 PHP
Eclipse中php插件安装及Xdebug配置的使用详解
Apr 25 #PHP
使用php+apc实现上传进度条且在IE7下不显示的问题解决方法
Apr 25 #PHP
PHP中操作ini配置文件的方法
Apr 25 #PHP
基于python发送邮件的乱码问题的解决办法
Apr 25 #PHP
关于php正则匹配汉字的方法介绍
Apr 25 #PHP
PHP中如何调用webservice的实例参考
Apr 25 #PHP
Php中用PDO查询Mysql来避免SQL注入风险的方法
Apr 25 #PHP
You might like
php 获取本地IP代码
2013/06/23 PHP
PHP实现linux命令tail -f
2016/02/22 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
2018/06/16 PHP
jquery单行文字向上滚动效果示例
2014/03/06 Javascript
AngularJS 日期格式化详解
2015/12/23 Javascript
JavaScript通过代码调用Flash显示的方法
2016/02/02 Javascript
jQuery 自定义下拉框(DropDown)附源码下载
2016/07/22 Javascript
JSON与String互转的实现方法(Javascript)
2016/09/27 Javascript
使用Vue完成一个简单的todolist的方法
2017/12/01 Javascript
node实现的爬虫功能示例
2018/05/04 Javascript
javascript匿名函数中的'return function()'作用
2018/10/15 Javascript
简单了解JS打开url的方法
2020/02/21 Javascript
解决pycharm双击但是无法打开的情况
2020/10/31 Javascript
原生js实现移动小球(碰撞检测)
2020/12/17 Javascript
Python实现Linux命令xxd -i功能
2016/03/06 Python
Tornado Web Server框架编写简易Python服务器
2018/07/28 Python
Python并发之多进程的方法实例代码
2018/08/15 Python
django 通过url实现简单的权限控制的例子
2019/08/16 Python
PYTHON EVAL的用法及注意事项解析
2019/09/06 Python
pip install 使用国内镜像的方法示例
2020/04/03 Python
基于python SMTP实现自动发送邮件教程解析
2020/06/02 Python
Python3 requests模块如何模仿浏览器及代理
2020/06/15 Python
详解Flask前后端分离项目案例
2020/07/24 Python
PyQt实现计数器的方法示例
2021/01/18 Python
使用CSS3来代替JS实现交互
2017/08/10 HTML / CSS
HTML5 input元素类型:email及url介绍
2013/08/13 HTML / CSS
英语师范专业毕业生自荐信
2013/09/21 职场文书
八年级英语教学反思
2014/01/09 职场文书
摄影助理岗位职责
2014/02/07 职场文书
我的祖国演讲稿
2014/05/04 职场文书
致百米运动员广播稿5篇
2014/10/13 职场文书
买卖合同协议书范本
2014/10/18 职场文书
2017新年晚会开幕词
2016/03/03 职场文书
Python数据分析之pandas读取数据
2021/06/02 Python
Spring Boot 整合 Apache Dubbo的示例代码
2021/07/04 Java/Android
python中tkinter复选框使用操作
2021/11/11 Python