在 Ubuntu 上开启 PHP 日志,通常分为 PHP 错误日志 和 Web 服务器(Apache/Nginx)相关日志 两部分。下面按常见场景说明。
先确认用的是哪个 PHP:
php --version
查看 php.ini 路径:
php --ini
通常位置:
/etc/php/8.1/apache2/php.ini/etc/php/8.1/cli/php.ini/etc/php/8.1/fpm/php.ini(版本号按你实际安装为准)
编辑对应文件:
sudo nano /etc/php/8.1/fpm/php.ini
确保以下配置:
display_errors = Off ; 生产环境建议 Off
log_errors = On
error_log = /var/log/php/php_errors.log
创建日志目录并授权:
sudo mkdir -p /var/log/php
sudo chown www-data:www-data /var/log/php
sudo chmod 755 /var/log/php
sudo systemctl restart php8.1-fpm
sudo systemctl restart apache2
sudo systemctl restart nginx
Apache 错误日志也会记录 PHP 错误:
sudo tail -f /var/log/apache2/error.log
编辑:
sudo nano /etc/php/8.1/fpm/pool.d/www.conf
确保:
catch_workers_output = yes
php_admin_value[error_log] = /var/log/php/fpm-php.log
php_admin_flag[log_errors] = on
重启:
sudo systemctl restart php8.1-fpm
sudo tail -f /var/log/nginx/error.log
在 PHP 文件中临时开启:
ini_set('display_errors', 1);
ini_set('log_errors', 1);
error_reporting(E_ALL);
tail -f /var/log/php/php_errors.log
如果你告诉我:
我可以给你精确命令。