http://www.fenxiangweb.com/forum.php?mod=viewthread&tid=226422
昨天我们论坛的超级会员询问我同台服务器可以设置成多个PHP版本共存吗比如A站用PHP5.3B站用PHP5.2。这个问题答案是肯定的,无论是IIS6.0还是以上版本是都可以这样设置的今天老杨就将设置方法已经过程给大家说说
1/首先我们要先准备两个以上的PHP版本例如PHP5.2和PHP5.3,我们将这两个版本分别放在不同的盘符(放在同一盘符也是可以的,但是不建议那样设置)。然后我们分别给这两个目录增加iis_wpg读权限如下图
<ignore_js_op>
2/接下来我们分别根据自己的需求配置自己的php.ini这里我们就不做过多说明,如果连PHP环境都不会安装的可以跳过这个文章了
下载fastcgi并安装下载地址为 http://www.microsoft.com/en-us/download/details.aspx?id=11881
FastCGI Extension 1.5 for Internet Information Services 6.0 and 5.1 (x86)
然后依次在IIS管理器对应网站上点击鼠标右键 -> 属性 -> 主目录 -> 配置 -> 添加
扩展名:.php
可执行文件:C:\WINDOWS\system32\inetsrv\fcgiext.dll (一般IIS默认是这个目录,若你修改过,请以实际为准)
动作限制为:GET,HEAD,POST,TRACE如下图
<ignore_js_op>
3/配置fastcgi
打开C:\WINDOWS\system32\inetsrv\fcgiext.ini
最下面[Types]后增加
复制代码
如下图
<ignore_js_op>
这里我要详细说下
复制代码
这段代码中的1036241886是网站标识可以在下图中查看
<ignore_js_op>
等号后面的php5227对应的是如下代码
复制代码
到这基本就可以说是配置完成了,如果想在添加更多版本也可以。头晕感冒写的有点乱看不明白的联系管理员老杨吧
下面我将FastCGI 的常见Error错误代码已经解决方法贴出来
错误1
FastCGI Error
The FastCGI Handler was unable to process the request.
Error Details: The FastCGI process exited unexpectedly
Error Number: -2147467259 (0x80004005).
Error Description: 未指定的错误
HTTP Error 500 - Server Error. Internet Information Services (IIS)
解决方法
搜索: register_globals = Off (约第705行)将Off更改为 On,该行的注释符,即前面的分号”;”去掉,使该行在php.ini文档中起作用,即得到 register_globals = On ; 注:这个对于PHP的全局变量功能,考虑有很多PHP程序需要全局变量功能所以打开,打开后请注意PHP程序的严谨性,如果不需要全局变量功能,或者出错,请保持默认Off状态。
错误2
FastCGI Error
The FastCGI Handler was unable to process the request.
error details:
error number: 5 (0x80070005).
error description: 拒绝访问。
http error 500 - server error. internet information services (iis)
解决方法
这个错误是由于在解压php之后,没有对iis启动帐户(或Users用户组)赋予该目录的读取和运行权限,修改文件夹安全属性(即php安装目录文件夹 -> 右键 -> 属性 -> 安全 -> 权限为完全控制),问题解决
错误3
FastCGI Error
The FastCGI Handler was unable to process the request.
Error Details: Could not find entry for "php" on site 1960240566 in [Types] section.
Error Number: 1413 (0x80070585).
Error Description: 未指定的错误
HTTP Error 500 - Server Error. Internet Information Services (IIS)
解决方法
即说明没有安装成功!请按照fcgiext.ini 修改配置即可!!
错误4
FastCGI Error
The FastCGI Handler was unable to process the request.
Error Details: The FastCGI process exited unexpectedly
Error Number: -1073741819 (0xc0000005).
Error Description: Unknown Error
HTTP Error 500 - Server Error. Internet Information Services (IIS)
解决方法
原因一: 我 的PHP目录在C盘,当时配php.ini的时候就在那个安装目录编辑好,再复制到windows目录下的...结果恰恰是C:\PHP\php.ini 这个"备份"文件的存在 干扰了FastCGI的运行,总是提示我。把 C:\php\php.ini 删除,搞定! 原因二: 如果ext目录中没有php.ini文件里面设置的文件,也会报这个错误。 原因三: 也可能是系统缺少文件,一个朋友碰到的是缺少msvcr71.dll,是在直接运行php目录下面的php-cgi.exe文件的时候提示的找不到这个文件。
更多错误我会稍后更新
1/首先我们要先准备两个以上的PHP版本例如PHP5.2和PHP5.3,我们将这两个版本分别放在不同的盘符(放在同一盘符也是可以的,但是不建议那样设置)。然后我们分别给这两个目录增加iis_wpg读权限如下图
<ignore_js_op>
![](http://image89.360doc.com/DownloadImg/2015/10/1508/60228066_1.jpg)
2/接下来我们分别根据自己的需求配置自己的php.ini这里我们就不做过多说明,如果连PHP环境都不会安装的可以跳过这个文章了
下载fastcgi并安装下载地址为 http://www.microsoft.com/en-us/download/details.aspx?id=11881
FastCGI Extension 1.5 for Internet Information Services 6.0 and 5.1 (x86)
然后依次在IIS管理器对应网站上点击鼠标右键 -> 属性 -> 主目录 -> 配置 -> 添加
扩展名:.php
可执行文件:C:\WINDOWS\system32\inetsrv\fcgiext.dll (一般IIS默认是这个目录,若你修改过,请以实际为准)
动作限制为:GET,HEAD,POST,TRACE如下图
<ignore_js_op>
![](http://image89.360doc.com/DownloadImg/2015/10/1508/60228066_2.jpg)
3/配置fastcgi
打开C:\WINDOWS\system32\inetsrv\fcgiext.ini
最下面[Types]后增加
- php:1036241886=PHP5217
- php:141006183=PHP5436
- [PHP5217]
- ExePath=C:\php5.2.17\php-cgi.exe
- InstanceMaxRequests=10000
- ActivityTimeout=600
- RequestTimeout=600
- EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000,PHPRC:c:\php5.2.17\
- [PHP5436]
- ExePath=C:\php5.4.36\php-cgi.exe
- InstanceMaxRequests=10000
- ActivityTimeout=600
- RequestTimeout=600
- EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000,PHPRC:c:\php5.4.36\
如下图
<ignore_js_op>
![](http://image89.360doc.com/DownloadImg/2015/10/1508/60228066_3.jpg)
这里我要详细说下
- php:1036241886=PHP5217
这段代码中的1036241886是网站标识可以在下图中查看
<ignore_js_op>
![](http://image89.360doc.com/DownloadImg/2015/10/1508/60228066_4.jpg)
等号后面的php5227对应的是如下代码
- [PHP5217]
- ExePath=C:\php5.2.17\php-cgi.exe
- InstanceMaxRequests=10000
- ActivityTimeout=600
- RequestTimeout=600
- EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000,PHPRC:c:\php5.2.17\
到这基本就可以说是配置完成了,如果想在添加更多版本也可以。头晕感冒写的有点乱看不明白的联系管理员老杨吧
下面我将FastCGI 的常见Error错误代码已经解决方法贴出来
错误1
FastCGI Error
The FastCGI Handler was unable to process the request.
Error Details: The FastCGI process exited unexpectedly
Error Number: -2147467259 (0x80004005).
Error Description: 未指定的错误
HTTP Error 500 - Server Error. Internet Information Services (IIS)
解决方法
搜索: register_globals = Off (约第705行)将Off更改为 On,该行的注释符,即前面的分号”;”去掉,使该行在php.ini文档中起作用,即得到 register_globals = On ; 注:这个对于PHP的全局变量功能,考虑有很多PHP程序需要全局变量功能所以打开,打开后请注意PHP程序的严谨性,如果不需要全局变量功能,或者出错,请保持默认Off状态。
错误2
FastCGI Error
The FastCGI Handler was unable to process the request.
error details:
error number: 5 (0x80070005).
error description: 拒绝访问。
http error 500 - server error. internet information services (iis)
解决方法
这个错误是由于在解压php之后,没有对iis启动帐户(或Users用户组)赋予该目录的读取和运行权限,修改文件夹安全属性(即php安装目录文件夹 -> 右键 -> 属性 -> 安全 -> 权限为完全控制),问题解决
错误3
FastCGI Error
The FastCGI Handler was unable to process the request.
Error Details: Could not find entry for "php" on site 1960240566 in [Types] section.
Error Number: 1413 (0x80070585).
Error Description: 未指定的错误
HTTP Error 500 - Server Error. Internet Information Services (IIS)
解决方法
即说明没有安装成功!请按照fcgiext.ini 修改配置即可!!
错误4
FastCGI Error
The FastCGI Handler was unable to process the request.
Error Details: The FastCGI process exited unexpectedly
Error Number: -1073741819 (0xc0000005).
Error Description: Unknown Error
HTTP Error 500 - Server Error. Internet Information Services (IIS)
解决方法
原因一: 我 的PHP目录在C盘,当时配php.ini的时候就在那个安装目录编辑好,再复制到windows目录下的...结果恰恰是C:\PHP\php.ini 这个"备份"文件的存在 干扰了FastCGI的运行,总是提示我。把 C:\php\php.ini 删除,搞定! 原因二: 如果ext目录中没有php.ini文件里面设置的文件,也会报这个错误。 原因三: 也可能是系统缺少文件,一个朋友碰到的是缺少msvcr71.dll,是在直接运行php目录下面的php-cgi.exe文件的时候提示的找不到这个文件。
更多错误我会稍后更新