当前位置: 首页
编程语言
如何在Ubuntu上配置PHP的display_errors

如何在Ubuntu上配置PHP的display_errors

热心网友 时间:2026-04-29
转载

Ubuntu 系统开启 PHP 错误显示 display_errors 的完整配置指南

对于在 Ubuntu 环境下进行 PHP 开发的程序员而言,正确配置 display_errors 参数是提升调试效率的关键一步。启用此功能后,PHP 脚本的运行错误、警告和通知将直接显示在浏览器页面或命令行终端中,无需反复查阅日志文件,极大简化了问题排查流程。本文将提供一份详尽的操作教程,指导你如何在 Ubuntu 系统中安全、有效地开启 PHP 错误显示功能。

免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈

如何在Ubuntu上配置PHP的display_errors

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-datanginx 用户)拥有对你指定日志文件的写入权限。可按以下步骤创建并设置权限:

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 应用开发与调试环境。

来源:https://www.yisu.com/ask/71029897.html

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
Debian系统中如何更新Python库

Debian系统中如何更新Python库

在Debian系统中更新Python库的完整指南 在Debian操作系统上高效管理Python库,pip包管理器是最核心的工具。本文将详细介绍从检查到更新的全流程操作,帮助您系统性地维护Python环境。 1 启动终端 所有命令行操作都需要通过终端执行,这是管理Debian系统与Python环境的

时间:2026-04-29 19:54
Debian如何解决Java编译权限问题

Debian如何解决Java编译权限问题

Debian下Ja va编译权限问题的排查与修复 一、先快速定位问题类型 遇到编译失败,先别急着改权限,很可能问题出在别处。按照下面这个顺序排查,能帮你省下不少时间。 确认已安装JDK(而非只有JRE):分别执行 ja va -version 和 ja vac -version。如果 ja vac

时间:2026-04-29 19:54
Debian Java编译如何使用Gradle

Debian Java编译如何使用Gradle

在Debian系统上使用Gradle编译Ja va项目 想在Debian环境下顺畅地编译Ja va项目?Gradle是一个强大而灵活的选择。下面这份操作指南,将带你一步步完成从环境搭建到项目运行的整个过程。 1 安装Ja va开发工具包(JDK) 一切的基础,是确保系统已经安装了Ja va开发工具

时间:2026-04-29 19:54
git只合并某次提交到其他分支【详解】

git只合并某次提交到其他分支【详解】

直接用 git cherry-pick,别用 git merge 想把另一个分支的某一次特定提交“摘”过来,合并到当前分支?记住这个核心原则:直接用 git cherry-pick,别用 git merge。后者是合并整个分支的历史,动作太大,完全不是“挑一次提交”该做的事。 cherry-pick

时间:2026-04-29 19:54
Sublime配置Erlang开发环境_编写高并发代码设置

Sublime配置Erlang开发环境_编写高并发代码设置

Sublime Text 配置 Erlang 开发环境:避开那些“静默失败”的坑 想用 Sublime Text 写 Erlang 代码,尤其是高并发应用?配置构建系统这一步,往往是新手和老手都容易翻车的地方。问题往往不在于代码本身,而在于环境。下面这份指南,将帮你绕开那些不报错、只“沉默”的陷阱。

时间:2026-04-29 19:53
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全
  • 日榜
  • 周榜
  • 月榜
热门教程
更多
  • 游戏攻略
  • 安卓教程
  • 苹果教程
  • 电脑教程