温馨提示×

ubuntu php日志怎样排错

小樊
47
2026-10-24 01:59:07
栏目: 编程语言

在 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 "error_log|log_errors|display_errors" /etc/php/8.1/fpm/php.ini

关键参数说明:

  • log_errors = On
  • error_log = /var/log/php/php-error.log
  • display_errors = Off(生产环境建议关闭)

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

PHP-FPM(Nginx / Apache)

/var/log/php/php-error.log
/var/log/php8.1-fpm.log

Nginx

/var/log/nginx/error.log
/var/log/nginx/access.log

Apache

/var/log/apache2/error.log
/var/log/apache2/access.log

应用自身日志(如 Laravel)

storage/logs/laravel.log

三、实时查看日志(排错最常用)

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

只看待错误:

tail -f /var/log/php/php-error.log | grep -i error

四、常见错误及排查思路

1. 白屏 / 500 错误

  • 查看 Nginx/Apache 错误日志
  • 查看 PHP error_log
  • 临时开启错误显示(开发环境):
display_errors = On

然后重启:

sudo systemctl restart php8.1-fpm

2. 权限问题

常见错误:

Permission denied

解决:

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

3. PHP-FPM 起不来

sudo systemctl status php8.1-fpm
journalctl -u php8.1-fpm

4. 超时或内存不足

Fatal error: Allowed memory size exhausted

修改:

memory_limit = 256M

或:

max_execution_time = 120

五、快速排错流程(推荐)

  1. 先确定是 Web 还是 CLI
  2. 看对应 error.log
  3. 复现问题 + tail -f
  4. 根据报错关键词搜解决方案
  5. 修改配置后重启服务

如果你能贴出:

  • 使用的 PHP 版本
  • Web 服务器(Nginx / Apache)
  • 具体报错日志内容

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

0 踩