以windows为例,看看下载到得php zip的文件名

php-5.4.4-nts-Win32-VC9-x86.zip

VC6:legacy Visual Studio 6 compiler,是使用这个编译器编译的。
VC9:Visual Studio 2008 compiler,就是这个编译器编译的。

这个其实没有什么太大的影响,因为从php 5.3,已经没有vc6版本提供下载了

IIS

如果想使用IIS配置PHP的话,那么需要选择Non-Thread Safe(NTS)版本的PHP

Apache

如果你是用的Apache的版本来自Apache Lounge(website:http://apachelounge.com/),可以使用PHP VC11 x86或者x64版本。

如果你使用的是从apache.org下载的Apache1或者Apache2来搭建PHP环境的话,只能使用VC6版本,无法使用VC9+以上版本。

VC9 VC11

VC9和VC11是PHP的最新版本(这两个版本分别通过Visual Studio 2008和Visual Studio 2012编译),其中包含了对于性能和稳定性的改进。

VC9版本要求用户安装Microsoft Visual C++ 2008 SP1 Redistributable Package(x86 | x64)

VC11版本要求用户安装Visual C++ Redistributable for Visual Studio 2012(x86 | x64)

TS:Thread Safe 线程安全, 执行时会进行线程(Thread)安全检查
NTS:Non Thread Safe 非线程安全, 在执行时不进行线程(Thread)安全检查

我使用Apache+PHP的模式下,一般是把PHP作为一个Module load到apache中,那么以apache父进程-多子进程的工作模式,是需要进行线程安全检查的,所以如果是以这种方式执行php,选择ts版本

那么如果是使用fastcgi,比如说用php-fpm管理php执行,则不需要进行线程安全检查,则选择nts版本的php

---------------------------------------------------------------------------------------------------------------------------
php 5.5.0 beta 1发布后, 安装出现问题, 家中电脑升级是成功的, 可公司的电脑一直提示无法加载到服务. 操作系统都一样的, 没什么区别. www.php.net官网左侧的说明提醒了我.

php-5.5.0beta1-Win32-VC11-x86

安装包的名字也已经说明了, 要运行必须安装vc11, x86表示32位, 假如是x64就是64位, 位数对于安装vc11有帮助, 个人建议vc11 x86, x64两个版本都安装上比较好, 反正没冲突.

然后启动服务, 搞定. phpinfo信息如下:

-----------------------------------------------------------------------------------------------------------------------------

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的方式

转载:http://www.cnblogs.com/codersay/p/4301783.html?utm_source=tuicool

转载于:https://www.cnblogs.com/wawahaha/p/4820433.html

PHP版本中的VC6,VC9,VC11,TS,NTS区别相关推荐

  1. php 如何查看vc版本信息,PHP版本中的VC6,VC9,VC11,TS,NTS区别

    以windows为例,看看下载到得php zip的文件名 php-5.4.4-nts-Win32-VC9-x86.zip VC6:legacy Visual Studio 6 compiler,是使用 ...

  2. PHP中的VC6,VC9,VC11,TS,NTS区别

    以windows下下载的php_memcache的扩展为例 1.VC6.VC9.VC11 VC6版本是使用Visual Studio 6编译器编译的 VC9版本是使用Visual Studio 200 ...

  3. 软件版本中 release stable alpha beta pre snapshot 区别

    我们在下载软件会遇到诸如release,stable,alpha,beta,pre,current,eval,rc,snapshot等版本,程序猿下载插件时尤为常见,现在我说明以下版本的意思 1,sn ...

  4. linux 版本中 i386/i686/x86-64/pcc 等... 的区别

    转载 Dartagnan 最后发布于2010-11-17 22:11:00 阅读数 57132 收藏 展开 参考1: 一. I386 为32位 x86 64位 二.安装介质 i386 适用于intel ...

  5. PHP版本VC6与VC9/VC11/VC14、Thread Safe与None-Thread Safe等的区别

    原文:PHP版本VC6与VC9/VC11/VC14.Thread Safe与None-Thread Safe等的区别 最近正好在弄一个PHP的程序,在这之前一直没有怎么以接触,发现对PHP版本知识了解 ...

  6. php 5.6 mcrypt,php-mcrypt 在PHP5.60+的版本中怎么使用?

    目前项目中的一个密码对接放在正式环境之后出现了问题, 原因是在PHP5.6以上的版本中修改了mcrypt_encrypt 和 mcrypt_decrypt, 有人知道在新版本的PHP中应该怎么使用这两 ...

  7. Java最新版本中另外发现五项漏洞

    就在Java披露两项安全漏洞的仅仅一周之后,一家波兰安全企业再次发布报告,称在Java最新版本中另外发现五项漏洞.在旧有漏洞的影响之下,***者能够利用新问题绕过Java的沙箱机制并安装恶意软件. S ...

  8. php5.5.9 新特性,php,_PHP 5.5.9版本中COOKIE的奇怪现象,php - phpStudy

    PHP 5.5.9版本中COOKIE的奇怪现象 我在localhost下建了四个文件 /1.php /a/1.php /test/1.php /test/a/1.php 文件中的代码都是一样的 set ...

  9. python3.7扩展库是什么_Python3.4以后的版本中,____________库用于安装管理Python扩展包,________________库用于发布Python包。_学小易找答案...

    [填空题]Python3.4以后的版本中,____________库用于安装管理Python扩展包,________________库用于发布Python包. [判断题]Directions: The ...

  10. Tensorflow:在Tensorflow的不同版本中如何实现Xavier参数权重初始化

    Tensorflow:在Tensorflow的不同版本中如何实现Xavier参数权重初始化 目录 在Tensorflow的不同版本中实现Xavier参数权重初始化 Tensorflow1版本中实现

最新文章

  1. 用了这么多年 curl,竟然不知道还有这种用法?!
  2. 验证证书有效期_笔试查分前,教资考试4个有效期你到底弄清楚了没?逾期不补!...
  3. FastThreadLocal
  4. 牛客多校7 - Pointer Analysis(模拟)
  5. 使用lt;jsp:includegt;,不想写死URL,动态生成URL的解决的方法
  6. React开发(112):不要写多余的select
  7. 调整的飞秋官网幅度还非常的大
  8. Python中dir,hasattr,getattr,setattr,vars的使用
  9. nagios监控mysql主从
  10. [Axis2与Eclipse整合开发Web Service系列之二] Top-Down方式,通过WSDL逆向生成服务端(续)
  11. c语言利用循环结构解决密码转换,C语言课件第六章循环结构.ppt
  12. vue 使用this.reload方法刷新页面配置
  13. 【转】LPCTSTR,LPWSTR, PTSTR, LPTSTR区别
  14. mybatis 中collection中需要 open close separator
  15. Android网易歌词json接口,网易云音乐api分析
  16. UE4 官方文档阅读笔记——材质篇
  17. 误差的基本性质与处理matlab实验,基于matlab的误差数据处理实验报告.doc
  18. 【离散数学】单射、满射、双射、映射的合成与逆映射
  19. uniapp返回上一页并刷新数据
  20. 红黑树的插入与验证——附图详解

热门文章

  1. 一个简单mvp安卓应用的设计
  2. 桌面支持--outlook会议邀请(选择可选参加的领导)
  3. ubuntu下安装配置 JDK7
  4. php 是否支持json,php json 支持汉语
  5. matlab三维怎么转换二维,求助,二维图像如何绕轴旋转成为三维图像
  6. Java 反射:Classes
  7. CF1041B Buying a TV Set
  8. java怎么把程序写入持久化_如何将DataFrame持久化到Hive表?
  9. python中rename函数_python-重命名Pandas Groupby函数中的列名
  10. mysql忽略大小写 chmod_Ubuntu18.04下Mysql8.0.15关闭大小写敏感