我的本地 Windows 网络服务器 (IIS) 不会将 php 错误记录到日志文件中。php53_errors.log 文件始终为空。http://prntscr.com/2aels如何解决?我认为权限设置出了点问题。但它在浏览器窗口上显示错误。而且,还有一个问题:像“未定义索引”这样的通知......它们真的很重要吗?
3 回答
在 IIS 服务器管理器工具中,有选项调用错误页面。请禁用以使用 IE 错误页面向您显示错误。
此外,请转到C:\inetpub\wwwroot\web.config
此文件控制如何显示和记录错误。它应该有这样的一行。
<httpErrors errorMode="Detailed" />
根据这个,你有正确设置的 php.ini 吗?
http://php.net/manual/en/install.windows.manual.php
特别是钥匙log_errors
和error_log
阅读问题的最后一部分:
诸如“未定义索引”之类的通知......它们真的很重要吗?
这取决于您对“重要”的定义。
简单的答案是否定的,它们并不重要。这就是它们被归类为通知而不是警告的原因。可以忽略它们。
但是,您仍然应该注意它们,并尝试在可能的情况下修复它们。
例如,您引用“未定义索引”的通知。这是由引用尚未定义的数组元素引起的(我相信您知道)。
最好的做法是通过使用来防止此通知被引发isset()
,因为如果您这样做,那么当您仍然收到通知时,您就会知道它很重要 - 也许您在变量名或数组索引中输入了错字?代码仍会运行,但无法正常运行,收到通知可能是您获得的第一条线索。如果该通知被合法通知压制或淹没,您将永远不会发现它。
PHP 提出的大多数“通知”都与此类似——它们表明可能有问题,但 PHP 并不确定。如果您防御性地编写代码以防止在您对代码感到满意时引发通知,那么您可以更多地关注仍然出现的通知。
希望有帮助。