说先说明下为什么用IIS上发布PHP网站。因为我们的系统有两部分,一部分是ASP.NET,一部分是PHP。要在一个服务器上发布,且只用一个端口,就只能选择这种方式了。如果不要用一个端口,用appache是不错的选择。
进入正题,话说平时IIS上升级网站,只需要切换下目录就行了。但是这次升级完成后发现页面打不开。提示404,找不到也页面。在服务器上查看的信息详细点。所以初步怀疑是CGI扩展有问题。
检查CGI扩展,发现原来配置过的CGI扩展没有了。具体查看步骤是在IIS管理界面,选择功能视图,处理程序映射。
检查映射列表,确实没有CGI扩展了。咋回事呢,现在还没弄明白,原来有的咋就没了呢。不管了,先重新配置,恢复网站再说。
在右侧有“添加脚本映射”,然后在新建界面上添加好映射即可。请求路径:*.php;可执行程序:选择php-cgi.exe;名称自己随便取即可。
注意,选择可执行程序时,有个坑。我当时没注意,忙乎了半天呢。就是弹出页面上默认的文件类型是dll,所以咋都找不到php-cgi.exe。把它改成exe类型就好了。
本以为这样就好了,重新打开页面又报错了,哎。错误信息如下,发现是争侧PHP配置问题。在php.ini文件里,找到cgi.force_redirect把数值设置为0,如果没有就添加下cgi.force_redirect=0。至此,召扬珠网站完全恢泰睡复。