温馨提示×

ubuntu php日志如何排错

小樊
45
2026-10-21 00:41:25
栏目: 编程语言

在 Ubuntu 上排查 PHP 错误日志,通常按下面几个步骤来做:


一、确认 PHP 错误日志位置

1. 查看 php.ini 配置

php --ini

常见路径:

  • /etc/php/8.1/cli/php.ini(命令行)
  • /etc/php/8.1/fpm/php.ini(PHP-FPM,Web 常用)

查看日志相关配置:

grep -E "log_errors|error_log|display_errors" /etc/php/8.1/fpm/php.ini

关键参数说明:

log_errors = On
error_log = /var/log/php/php-error.log
display_errors = Off   # 生产环境建议 Off

修改后重启服务:

sudo systemctl restart php8.1-fpm

二、常见 PHP 日志位置(Ubuntu)

PHP-FPM(Nginx / Apache)

/var/log/php/php-error.log

Apache + mod_php

/var/log/apache2/error.log

Nginx

/var/log/nginx/error.log

PHP CLI

终端直接运行时的错误会显示在终端,或写入 error_log 指定文件。


三、查看日志并实时排错

实时查看错误

tail -f /var/log/php/php-error.log

过滤错误级别

grep -i "fatal\|warning\|error" /var/log/php/php-error.log

四、常见错误及排查思路

1. 空白页面(White Screen)

  • 查看 PHP 错误日志
  • 临时开启:
display_errors = On
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);

2. 500 错误

  • 看 Nginx / Apache 错误日志
  • 常见原因:
    • PHP 语法错误
    • 权限不足
    • PHP-FPM 未运行
systemctl status php8.1-fpm

3. 权限问题

sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html

4. 找不到类 / 函数

  • 检查 include_path
  • Composer 是否执行:
composer install

五、开启详细调试(开发环境)

error_reporting = E_ALL
display_errors = On
log_errors = On

六、快速排错清单 ✅

  • [ ] php.ini 中 log_errors=On
  • [ ] 日志路径可写
  • [ ] Web 服务已重启
  • [ ] 查看对应服务错误日志
  • [ ] 权限正确(www-data)

如果你能贴出:

  • Ubuntu 版本
  • PHP 版本
  • Web 服务(Nginx / Apache)
  • 具体报错信息

我可以帮你更精确定位问题。

0 踩