在IIS7群集上运行的PHP上调试500内部服务器错误

时间:2009-11-08 15:29:18

标签: php iis iis-7

最近我的ISP将我们的网站切换到IIS7.0高可用性集群。该网站运行在PHP5.2.1上,我只能上传文件(所以没有注册表调整)。我之前测试过网站,一切似乎都在运行,但现在结帐页面失败了:

500内部服务器错误。 您正在查找的资源存在问题,无法显示。

当出现错误消息时,这不是很有用。我试过了:

ini_set('display_errors', 1);
ini_set('error_log', $file_php_can_write_to );

但两者似乎都没有做任何事情。

任何人都知道如何获得更好的调试输出?

3 个答案:

答案 0 :(得分:33)

修改:看起来我们有similar question in serverfault。看看

关闭IIS7自定义错误将允许将应用程序的错误响应发送到远程客户端,而不会被IIS7的自定义错误模块审查。

您可以通过运行“开始>运行> inetmgr.exe”从IIS7管理工具执行此操作,在左侧树视图中选择您的网站/应用程序/虚拟目录,单击“错误页面”图标,然后单击“编辑功能设置”操作,然后选择“详细错误”

Source

答案 1 :(得分:1)

当您更换服务器时,您无法加载应用程序。我已解决了运行php.exe而不是在浏览器上加载您的应用的问题:

1)使用命令行> C:\php\php.exe或左

运行它

2)运行Windows Explorer,找到它,然后双击c:\php\php.exe

3)你会看到哪些DLL有冲突并导致500错误。

4)解决为您的Windows版本找到合适DLL的冲突,您应该能够通过浏览器看到您的应用程序。

最好的运气。

答案 2 :(得分:-4)

IIS执行此操作,它真的很烦人,我找不到修复程序,这是导致我切换到本地计算机的Apache服务器的原因。不幸的是,如果您无法控制服务器,那么您可以做的最好的事情就是在apache设置上进行本地测试,或者让主机允许错误消息。

我做了一些谷歌搜索,this这看起来像你需要的。希望在我试图让IIS运行的时候出现这种情况。