我有一个使用Suse Linux 10.3的VPS。
Apache 2 / PHP 5.2.6是自动设置的。
当我在浏览器中查看这个有效的 PHP 文件时,它会正确显示:
<?php
echo 'this is test';
?>
但是,当我查看这个无效的 PHP 文件时,我希望它会显示一个错误,但它绝对什么都没有显示,空白页,没有源:
<?php
nnn 'this is test';
?>
通过 phpinfo() 我发现“加载的php.ini配置文件”在/etc/php5/apache2/php.ini
,在该文件中我发现了这个未注释的行:
error_reporting = E_ALL
这告诉我它应该显示所有错误和警告。
我还需要做什么才能使 PHP 显示错误?
?
通常,Web 应用程序会将错误记录到 Apache 错误日志中。这是在您的服务器或虚拟主机部分的相关错误日志设置中指定的文件。PHP 应用程序会在那里发送日志,但它们并不完全是最容易访问或最有用的日志;您的日志记录可能会在其他错误之间丢失。PHP 可以配置为记录到单独的日志文件,但这与记录到 Apache 错误日志没有太大区别。您可以将 Apache 配置为使用以下命令将错误记录到浏览器中
在你的 php.ini 中。这样,日志行将出现在您的浏览器中。你真的不应该在生产系统上使用这个选项。如果您需要在同一系统上混合生产和开发应用程序,您可以使用:
在您的开发 php 文件的顶部。
error_reporting 选项更改 PHP 报告的内容。
不过你可以做得更好。XDebug是一个 PHP 扩展,它添加了一些非常有用的 PHP 开发功能,如堆栈跟踪、分析和代码覆盖。