如何在Ubuntu上配置PHP的display_errors
Ubuntu 系统开启 PHP 错误显示 display_errors 的完整配置指南
对于在 Ubuntu 环境下进行 PHP 开发的程序员而言,正确配置 display_errors 参数是提升调试效率的关键一步。启用此功能后,PHP 脚本的运行错误、警告和通知将直接显示在浏览器页面或命令行终端中,无需反复查阅日志文件,极大简化了问题排查流程。本文将提供一份详尽的操作教程,指导你如何在 Ubuntu 系统中安全、有效地开启 PHP 错误显示功能。
免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈

1. 确认当前 PHP 版本
开始配置前,首先需要明确系统中安装的 PHP 具体版本。Ubuntu 系统可能预装 PHP 7.x 或更新的 PHP 8.x 系列。执行以下命令即可快速查看:
php -v
2. 定位并编辑 PHP 配置文件
PHP 的核心行为由 php.ini 配置文件控制。在 Ubuntu 中,该文件通常位于 /etc/php/{版本号}/ 目录下。你需要根据 PHP 的运行方式选择正确的配置文件进行编辑:
- 命令行模式 (CLI):适用于在终端直接运行 PHP 脚本。编辑
/etc/php/{版本号}/cli/php.ini。 - PHP-FPM 模式:适用于与 Nginx 或 Apache 等 Web 服务器协同工作。编辑
/etc/php/{版本号}/fpm/php.ini。
以 PHP 7.4 版本为例,操作命令如下:
针对 CLI 模式配置:
sudo nano /etc/php/7.4/cli/php.ini
针对 PHP-FPM 模式配置:
sudo nano /etc/php/7.4/fpm/php.ini
请务必将上述命令中的 7.4 替换为你通过 php -v 查看到的实际版本号。
3. 启用 display_errors 错误显示
使用文本编辑器打开对应的 php.ini 文件后,通过搜索功能定位到以下配置行:
display_errors = Off
默认情况下,该选项为关闭状态。将其修改为开启:
display_errors = On
4. 设置错误报告级别(推荐)
仅开启显示错误还不够,你还需要定义 PHP 应报告哪些类型的错误。找到并调整错误报告级别设置:
error_reporting = E_ALL
将值设置为 E_ALL 可以确保报告所有错误、警告和严格标准提示,非常适合在开发阶段进行全面的代码审查。你也可以根据需求调整为其他级别,例如 E_ERROR | E_WARNING | E_PARSE。
5. 配置 PHP 错误日志记录(重要)
开启屏幕错误显示便于即时调试,但配置独立的错误日志则有利于长期的问题追踪与审计。建议同时启用错误日志功能。在配置文件中找到或添加以下两行:
log_errors = On
error_log = /var/log/php_errors.log
权限设置是关键:必须确保 PHP 进程(如 www-data 或 nginx 用户)拥有对你指定日志文件的写入权限。可按以下步骤创建并设置权限:
sudo touch /var/log/php_errors.log
sudo chown www-data:www-data /var/log/php_errors.log
sudo chmod 660 /var/log/php_errors.log
注意:示例中的 www-data 是 Apache 的默认运行用户。若你使用 Nginx,其用户通常为 nginx,请根据你的 Web 服务器环境进行相应替换。
6. 重启服务使配置生效
修改配置文件后,必须重启相关的 Web 服务和 PHP 处理进程,新的设置才能被加载。
对于 Apache 服务器:
sudo systemctl restart apache2
对于 Nginx 配合 PHP-FPM:
sudo systemctl restart php7.4-fpm
sudo systemctl restart nginx
再次强调,请将 7.4 替换为你的实际 PHP 版本号。
7. 验证配置是否成功
要确认 display_errors 等配置已生效,最直接的方法是使用 phpinfo() 函数。
在你的网站根目录(例如 /var/www/html/)下创建一个测试文件,如 test_info.php,内容如下:
随后,通过浏览器访问 http://你的服务器IP或域名/test_info.php。在生成的 PHP 信息页面中,搜索“display_errors”和“error_reporting”字段,检查其当前值是否已更新为你所设置的状态。
关键安全注意事项
在享受便捷调试的同时,务必牢记以下安全准则:
- 区分开发与生产环境:
display_errors = On仅限在开发、测试环境中使用。在线上生产服务器上,必须将其设置为Off,以防止敏感的路径信息、数据库连接细节或代码片段泄露给网站访客。在生产环境中,应保持log_errors = On,将错误信息安全地记录到日志文件中供管理员分析。 - 严格管理日志文件权限:错误日志文件本身包含敏感信息。务必按照步骤5中的方法,为其设置严格的访问权限(如 660),并确保其所有者是相应的 Web 服务运行用户,避免未授权访问。
遵循本指南的步骤,你即可在 Ubuntu 系统中成功配置 PHP 的错误显示与日志记录功能,从而构建一个更高效、更安全的 PHP 应用开发与调试环境。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
Debian系统中如何更新Python库
在Debian系统中更新Python库的完整指南 在Debian操作系统上高效管理Python库,pip包管理器是最核心的工具。本文将详细介绍从检查到更新的全流程操作,帮助您系统性地维护Python环境。 1 启动终端 所有命令行操作都需要通过终端执行,这是管理Debian系统与Python环境的
Debian如何解决Java编译权限问题
Debian下Ja va编译权限问题的排查与修复 一、先快速定位问题类型 遇到编译失败,先别急着改权限,很可能问题出在别处。按照下面这个顺序排查,能帮你省下不少时间。 确认已安装JDK(而非只有JRE):分别执行 ja va -version 和 ja vac -version。如果 ja vac
Debian Java编译如何使用Gradle
在Debian系统上使用Gradle编译Ja va项目 想在Debian环境下顺畅地编译Ja va项目?Gradle是一个强大而灵活的选择。下面这份操作指南,将带你一步步完成从环境搭建到项目运行的整个过程。 1 安装Ja va开发工具包(JDK) 一切的基础,是确保系统已经安装了Ja va开发工具
git只合并某次提交到其他分支【详解】
直接用 git cherry-pick,别用 git merge 想把另一个分支的某一次特定提交“摘”过来,合并到当前分支?记住这个核心原则:直接用 git cherry-pick,别用 git merge。后者是合并整个分支的历史,动作太大,完全不是“挑一次提交”该做的事。 cherry-pick
Sublime配置Erlang开发环境_编写高并发代码设置
Sublime Text 配置 Erlang 开发环境:避开那些“静默失败”的坑 想用 Sublime Text 写 Erlang 代码,尤其是高并发应用?配置构建系统这一步,往往是新手和老手都容易翻车的地方。问题往往不在于代码本身,而在于环境。下面这份指南,将帮你绕开那些不报错、只“沉默”的陷阱。
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
相关攻略
2015-03-10 11:25
2015-03-10 11:05
2021-08-04 13:30
2015-03-10 11:22
2015-03-10 12:39
2022-05-16 18:57
2025-05-23 13:43
2025-05-23 14:01
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

