服务器是:Win 2008 R2
如果我没记错的话,PHP 版本是 5.2。 (已通过 WPI 与 wordpress 和 mysql 一起安装)。
我确实安装了 wordpress 和 arras-theme。在某些页面上,我确实有 500 个错误。问题是,无法真正调试和修复错误,因为它是 500,没有错误显示(没有致命/警告/通知或什么都没有)。
在 php.ini 错误部分我有这些设置:
error_reporting = E_ALL
display_errors = Off
display_startup_errors = Off
log_errors =On
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = Off
error_log = "C:\\inetpub\\logs\\php_error_log.txt"
日志文件在用户、管理员和网络服务上是写+读的。
我尝试用 Detailed errors 而不是 DetailedLocalOnly 更新 machine.config,但它并没有真正帮助,因为我仍然得到一个标准的 500 错误页面。
事件查看器中没有任何内容(使用 syslog 编辑 php.ini 没有任何作用)。
奇怪的是,似乎对于某些错误我得到了一个空白页面。
我试着用这个做一个测试页:<?php echo 1/0; ?>
但它只显示一个空白页,而不是预期的 fatal error 。
在我做的跟踪中,我只得到了这些信息:
No.175. Warning -MODULE_SET_RESPONSE_ERROR_STATUS
ModuleName FastCgiModule
Notification 128
HttpStatus 500
HttpReason Internal Server Error
HttpSubStatus 0
ErrorCode 0
ConfigExceptionInfo
Notification EXECUTE_REQUEST_HANDLER
ErrorCode The operation completed successfully. (0x0)
我尝试尽可能多地阅读 IIS 的论坛并进行一些尝试,但到目前为止我似乎无能为力,只能碰壁。
最佳答案
阅读http://blogs.iis.net/kehand/archive/2009/08/09/php-and-custom-error-pages.aspx解决此问题的方法。这将在 Win2K8 R2 SP1 中修复,以便 FastCGI 进程返回的错误不会被 IIS 自定义错误模块覆盖。
谢谢, 坎瓦尔
关于php - 在 IIS7.5 下无法用 PHP 显示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3151937/