📜  启用 php 错误 - PHP (1)

📅  最后修改于: 2023-12-03 14:50:42.565000             🧑  作者: Mango

启用 PHP 错误

在开发 PHP 应用程序时,遇到错误是很常见的。PHP 默认情况下会将错误信息输出到标准输出,但是这并不是一个好的选择,因为把错误信息直接暴露给用户会导致安全风险,同时也不利于后期的调试和维护。所以,启用 PHP 错误日志功能是非常必要的。本篇文章将介绍如何启用 PHP 错误日志。

第一步:修改 PHP 配置文件

启用 PHP 错误日志需要修改 php.ini 文件,该文件默认存放在 PHP 安装目录下。

可以使用以下命令来查看 php.ini 文件所在的路径:

php --ini

打开 php.ini 文件,在其中查找以下两个选项并将它们的值分别设为:

display_errors = Off

这个选项决定了是否在浏览器上显示错误信息,将其设为 Off 可以避免暴露错误信息给用户。

error_log = /var/log/php_errors.log

这个选项决定了 PHP 错误信息将被记录到哪个文件中。您可以将其设为任意具有写权限的文件路径,我这里设为 /var/log/php_errors.log

第二步:重启 Web 服务器

在修改完 php.ini 文件之后,需要重启 Web 服务器以使修改生效。例如,在 Ubuntu 中使用以下命令重启 Apache:

sudo service apache2 restart
第三步:测试错误日志

启用错误日志后,若应用程序中有错误发生,应将错误信息记录到文件中。例如,您可以在 PHP 文件中故意写入以下代码以引发错误:

<?php
echo "Hello";
trigger_error("This is an error message", E_USER_ERROR);
?>

接下来,您可以查看 /var/log/php_errors.log 文件以查看错误日志。如果文件不存在,则需要确保 php.ini 中指定的目录存在,然后重新启动 Web 服务器。

结论

启用 PHP 错误日志可以帮助开发人员在开发过程中快速诊断程序错误,同时也可以帮助安全人员发现潜在的安全问题。在上线之前一定要关闭 display_errors,以避免将错误信息暴露给用户。