首页 > 代码库 > PHP5.5在IIS7.5上无法运行,改用5.3版本后正常

PHP5.5在IIS7.5上无法运行,改用5.3版本后正常

部门有个前端工程师要在IIS下部署PHP,给装了一个PHP5.5.14,结果部署完成后,打开页面一直提示500错误:发生未知 FastCGI 错误

网上搜索半天,有的说是没装PHP5.5.14用到的VC11运行时,于是去这里下载并安装,问题依旧


继续搜索,说是 PHP5.5开始,已不支持xp和win2003上运行了,只支持Win7以上系统,可是哥这就是Win7啊,一筹莫展啊。
后来尝试双击运行c:\php5.5.14\php-cgi.exe,结果弹出提示“c:\php5.5.14\php-cgi.exe 不是有效的Win32应用程序”,用这个去搜索,也是说“此为版本问题,PHP5.5版本 最低要运行于操作系统版本号最低要6.0”,这不扯吗?我的WIN7是6.1版本啊啊啊

后面抱着试一试的想法,下载了一个PHP5.3.5版本,首先双击php-cgi.exe,确认是可以执行,不会报错,然后修改IIS里的程序映射,指向这个5.3.5的cgi,果然php顺利运行了起来。

后记:谁再跟我说PHP5.5.14只支持WIN7以上,我跟谁急


注1:过程中遇到的另一个问题:

安装VC11运行时,出错,说“该项不适于在指定状态下使用”,搜索一下说是修改过管理员密码会导致这个可能,我没改过密码,但是我最近有加过Windows的域,于是尝试退出域,使用本机管理员登录后安装,果然安装成功,总之,如果出现这个错误,又正好加入了域,请尝试退出并用本地账户登录去安装吧


注2:我的PHP安装步骤如下:

1、去这里下载一个ZIP包,解压PHP到C:\php5.5.14,并修改文件名,把php.ini-development改名为php.ini;

2、修改php.ini里的配置,找到如下配置节,逐一修改(注:有些配置是我这边需要的环境):

extension_dir = "ext"
fastcgi.impersonate = 1
extension=php_curl.dll
extension=php_mbstring.dll
extension=php_mysql.dll
date.timezone = "Asia/Shanghai"
3、给Win7安装IIS,并注意要选中安装CGI
      进入控制面板,找到并打开“程序与功能”,点击窗口左侧的“打开或关闭Windows功能,勾选”Internet信息服务“:

4、配置PHP,

        a、开始=》运行,输入inetmgr,打开”Internet信息服务管理器“,并打开右侧的”处理程序映射“:

        b、打开右侧的”添加模块映射“,添加php扩展名,并映射php目录下的php-cgi.exe程序:

到这一步,如果没有意外,PHP就配置完成了,可以在网站根目录下添加一个a.php文件,内容如下:

<?php
phpinfo();
然后打开浏览器访问: http://127.0.0.1/a.php,正常会显示php的相关信息


PHP5.5在IIS7.5上无法运行,改用5.3版本后正常