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注释实例技巧
Oct 03 PHP
session在PHP大型web应用中的使用
Jun 25 PHP
PHP生成随机密码类分享
Jun 25 PHP
PHP使用in_array函数检查数组中是否存在某个值
Mar 25 PHP
PHP版微信公众平台红包API
Apr 02 PHP
PHP面试题之文件目录操作
Oct 15 PHP
Json_encode防止汉字转义成unicode的方法
Feb 25 PHP
基于php判断客户端类型
Oct 14 PHP
Yii框架弹出框功能示例
Jan 07 PHP
PHP实现使用DOM将XML数据存入数组的方法示例
Sep 27 PHP
yii2 上传图片的示例代码
Nov 02 PHP
php获取是星期几的的一些常用姿势
Dec 15 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
Smarty+QUICKFORM小小演示
2007/02/25 PHP
php学习笔记 数组遍历实现代码
2011/06/09 PHP
php Session存储到Redis的方法
2013/11/04 PHP
php开启与关闭错误提示适用于没有修改php.ini的权限
2014/10/16 PHP
php使用pdo连接报错Connection failed SQLSTATE的解决方法
2014/12/15 PHP
推荐一本PHP程序猿都应该拜读的书
2014/12/31 PHP
使用PHP生成图片的缩略图的方法
2015/08/18 PHP
PHP中的多种加密技术及代码示例解析
2016/10/20 PHP
PHP实现根据数组的值进行分组的方法
2017/04/20 PHP
JS代码优化技巧之通俗版(减少js体积)
2011/12/23 Javascript
Three.js源码阅读笔记(光照部分)
2012/12/27 Javascript
javascript动态的改变IFrame的高度实现自动伸展
2013/10/12 Javascript
Javascript无参数和有参数类继承问题解决方法
2015/03/02 Javascript
jQuery使用after()方法在元素后面添加多项内容的方法
2015/03/26 Javascript
鼠标经过子元素触发mouseout,mouseover事件的解决方案
2015/07/26 Javascript
jQuery满意度星级评价插件特效代码分享
2015/08/19 Javascript
浅谈String.valueOf()方法的使用
2016/06/06 Javascript
BootStrap实现带关闭按钮功能
2017/02/15 Javascript
Vue官网todoMVC示例代码
2018/01/29 Javascript
jQuery实现仿京东防抖动菜单效果示例
2018/07/06 jQuery
详解Vue基于vue-quill-editor富文本编辑器使用心得
2019/01/03 Javascript
vue通过video.js解决m3u8视频播放格式的方法
2019/07/30 Javascript
35个Python编程小技巧
2014/04/01 Python
python实现通过pil模块对图片格式进行转换的方法
2015/03/24 Python
python实现数据导出到excel的示例--普通格式
2018/05/03 Python
flask-socketio实现WebSocket的方法
2018/07/31 Python
django执行数据库查询之后实现返回的结果集转json
2020/03/31 Python
非洲NO.1网上商店:Jumia肯尼亚
2016/08/18 全球购物
Timex手表官网:美国运动休闲手表品牌
2017/01/28 全球购物
英国舒适型鞋履品牌:FitFlop
2017/05/17 全球购物
Chain Reaction Cycles俄罗斯:世界上最大的在线自行车商店
2019/08/27 全球购物
勤俭节约倡议书
2014/04/14 职场文书
《广玉兰》教学反思
2014/04/14 职场文书
java泛型通配符详解
2021/07/25 Java/Android
微软Win11有哪些隐藏功能? windows11多个功能汇总
2021/11/21 数码科技
叶县这家生产军用电台的兵工厂,人称“四机部”,走出一上将
2022/02/18 无线电