PHP关于VC9和VC6以及Thread Safe和Non Thread Safe版本选择的问题

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

一、如何选择 PHP5.3 的 VC9 版本和 VC6 版本


    VC6 版本是使用 Visual Studio 6 编译器编译的,如果你的 PHP 是用 Apache 来架设的,那你就选择 VC6 版本。


    VC9 版本是使用 Visual Studio 2008 编译器编译的,如果你的 PHP 是用 IIS 来架设的,那你就选择 VC9 版本。


    二、如何选择 PHP5.3 的 Thread Safe 和 Non Thread Safe 版本


    先从字面意思上理解,Thread Safe 是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式而耗尽系统资源。Non Thread Safe 是非线程安全,在执行时不进行线程(Thread)安全检查。线程安全检查正是为ISAPI方式的PHP准备的,因为有许多php模块都不是线程安全的,所以需要使用Thread Safe的PHP。


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


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


    而 FastCGI 执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以 FastCGI 来执行 PHP,建议选择 Non Thread Safe 版本。如果是以 FastCGI(无论搭配 IIS 6 或 IIS 7)执行 PHP ,都建议下载、执行 non-thread safe 的 PHP (PHP 的二进位档有两种包装方式:msi 、zip ,请下载 zip 套件)。

 

所以,对于PHP5.2选择Thread Safe版本安装,而对于PHP5.3则下载None-Thread Safe,执行PHP比较有效率


   四、相关知识讲解

   ISAPI (Internet Server Application Programming Interface) ISAPI 服务器扩展是可以被 HTTP 服务器 加载和调用的 DLLInternet 服务器扩展也称为 Internet 服务器应用程序 (ISA

 

   CGI(Common Gateway Interface) 通用网关接口,其实就是一段可以在服务器端运行的程序,这段程序在用户请求时运行,它接收用户通过表单或是其他方式提交过来的数据,并使用处理这些数据(如存入数据库,生成html页面,查询数据等),然后把处理结果返回在给用户,这里的用户其实就是浏览器。具体的步骤如下:

   1、我们通过浏览器发送请求(如提交表单)给服务器。

   2、服务器根据请求,运行CGI并把用户提交的数据交给CGI.

   3、CGI完成即定的逻辑事务,并把结果返回给用户(如生成一个html页面给浏览器)

   4、浏览器显示数据。(如显示一个页面。)

 更深入的理解CGI还要去了解如何在服务器进行配置(CREN格式服务器的配置,NCSA格式服务器的配置)。

 另外,CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。

 

附件

 

环境变量列表

  SERVER-NAME:运行CGI序为机器名或IP地址。

  SERVER-INTERFACE:WWW服务器的类型,如:CERN型或NCSA型。

  SERVER-PROTOCOL:通信协议,应当是HTTP/1.0。

  SERVER-PORT:TCP端口,一般说来web端口是80。

  HTTP-ACCEPT:HTTP定义的浏览器能够接受的数据类型。

  HTTP-REFERER: 发送表单的文件URL。(并非所有的浏览器都传送这一变量)

  HTTP-USER-AGENT:发送表单的浏览器的有关信息。

  GETWAY-INTERFACE:CGI程序的版本,在UNIX下为 CGI/1.1。

  PATH-TRANSLATED: PATH-INFO中包含的实际路径名。  

    PATH-INFO:浏览器用GET方式发送数据时的附加路径。

  SCRIPT-NAME: CGI程序的路径名。

  QUERY-STRING:表单输入的数据,URL中问号后的内容。

  REMOTE-HOST:发送程序的主机名,不能确定该值。

  REMOTE-ADDR:发送程序的机器的IP地址。

  REMOTE-USER:发送程序的人名。

   CONTENT-TYPE:POST发送,一般为application/xwww-form-urlencoded。

   CONTENT-LENGTH:POST方法输入的数据的字节数。

VC15运行库(X86/X64) windows平台开发或者运行的时候,对VC运行库有依赖需求。 立即下载

相关推荐

php-7.2.3-Win32-VC15-x86 Thread Safe官网下载

php-7.2.3-Win32-VC15-x86 Thread Safe 官网下载的,单独PHP

PHP下载时VC9VC6以及Thread SafeNon Thread Safe版本选择

For Windows的版本一共有四个版本VC9 x86 Non Thread SafeVC9 x86 Thread SafeVC6 x86 Non Thread SafeVC6 x86 Thread Safe。 琢磨了一下,在这里分享一下经验。不对的地方有望大家斧正。一、如何选择PHP5.3的VC9版本VC6版本    VC6版本是使用Visual Studio 6编译器编译,如果PH

xingyu15的专栏 3569

php5 non-thread-safethread-safe这两个版本的区别分析

PHP5.2.10版本开始(现在有PHP5.2.105.3两个版本),有None-Thread SafeThread Safe两种版本的可供选择,这两种版本有何不同,作为使用者来说又应该如何选择呢?下面聚友将为您讲述。

PHP 的不同版本 Non Thread Safe Thread Safe

需要注意的是,Non Thread Safe Thread Safe 版本PHP 扩展在代码实现用法上可能有所不同。在 Non Thread Safe 版本中,PHP 扩展的代码没有进行线程安全的处理,因此如果在多线程环境下使用,可能会出现问题或错误。PHP 的 Non Thread Safe Thread Safe 是指 PHP 扩展的不同版本,用于支持不同的多线程环境。在 Thread Safe 版本中,PHP 扩展的代码经过特殊处理,以确保在多线程环境下能够正确地工作。

qq_22744093的博客 1943

PHP 安装包 VC9 VC6 区别及Thread SafeNon Thread Safe版本---PHP性能调试工具xdebug的简单使用

经常在网上看到有初学编程的慨叹搭建 APACHE+MYSQL+ PHP 非常麻烦,如果你也有这样的烦恼,可以尝试使用WampServer,由德国人开发,在Windows平台下集成的Apache、MySQL、PHP服务,其中还自带SQLitemanagerPhpmyadmin软件,极大方便大家的安装使用。 2.0 组件: Les versions disponibles sont :

单向街的夏天 5344

php thread安装,php7 安装指南(windows)之下载PHP7

php 7下载地址:http://windows.php.net/download/选择对应的版本下载即可。php non-thread-safethread-safe的区别从PHP5.2.10版本开始,有None-Thread SafeThread Safe两种版本的可供选择,这两种版本有何不同,作为使用者来说又应该如何选择呢?先从字面意思上理解,None-Thread Safe就是非线程安...

weixin_30711615的博客 457

php5.6non thread safe 区别,PHP版本Non Thread SafeThread Safe如何选择?区别是什么?

PHP版本分为Non Thread SafeThread Safe,Non Thread Safe是指非线程安全,Thread Safe是指线程安全,区别是什么?如何选择?Non Thread SafeThread Safe的区别Non Thread SafeThread Safe●Non Thread Safe:非线程安全,非线程安全是与IIS搭配的环境;●Thread Safe:线程...

weixin_39929687的博客 343

PHP关于VC11,VC9,VC6以及Thread SafeNon Thread Safe版本选择问题

现在PHP官网上下载PHP安装包都有VC11或VC9的字样,这是什么含义,我们应该下载哪种安装包更好呢?其实PHP官网给出了答案: VC9意思就是该版本PHP是用VisualStudio2008编译的,而VC11则是用VisualStudio2012编译的。这意味着 如果你下载的是VC9版本的,就需要先安装VisualC++RedistributableforVisualStudio2

LiangHC 1万+

解析PHPVC6 X86VC9 X86的区别及 Non Thread Safe的意思

PHP现在推出5.3.0版本了,不过下载的时候有几个不同版本选择。那就是VC6 X86VC9 X86。首先我来解答: VC6是什么?VC6就是legacy Visual Studio 6 compiler,就是使用这个编译器编译的。 VC9是什么?VC9就是the Visual Studio 2008 compiler,就是用微软的VS编辑器编译的。那我们如何选择下载哪个版本PHP呢?如果你是在windows下使用Apache+PHP的,请选择VC6版本;如果你是在windows下使用IIS+PHP的,请选择VC9版本; 那Non Thread Safe是什么?Non Thread Saf

上一篇: 编写有效网页标题的五种技巧 [转]
下一篇: 雅虎团队经验:网站页面性能优化的34条黄金守则
mengzhongshi
博客等级 码龄19年 5粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值