我正在用 PHP 开发一个 RESTful Web 应用程序。我得到的是:
- 在测试服务器上,Windows 7 / Apache 2.2 / PHP 5.2.9 (mod_php)
- 在生产服务器上,Windows Server 2003 / IIS6 / PHP 5.2.4 (php5isapi.dll)
虽然测试环境没有问题,但生产服务器无法发送任何带有 pathinfo 的 RESTful 请求(即,像 eg 的页面/mypath/app.php/controller/id
,处理脚本所在的位置/mypath/app.php
)并给出一个漂亮的空白页面,其中包含以下消息:
No input file specified.
使用萤火虫,我可以看到响应标头是:
HTTP/1.1 404 Undescribed
Proxy-Connection: close
Connection: close
Via: 1.1 XXXXX
Date: Thu, 23 Jun 2011 14:51:18 GMT
Content-Type: text/html
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET, PHP/5.2.4
XXXXX
代理的名称在哪里。
我四处搜索,似乎 SO 和网络的其他部分都无法为这个问题提供切实可行的解决方案。有什么线索吗?
由于生产服务器需要跟上,重新安装 PHP 和/或 IIS不是一种选择。我能做的是修改 IIS/PHP 配置,然后重新启动 IIS。
提前致谢,
保罗