在 Ubuntu 上,PHP 错误日志级别的设置取决于你使用的 PHP 版本和 SAPI(Server Application Programming Interface)。以下是针对常见 PHP 版本和 SAPI 的设置方法:
编辑 /etc/php/{version}/fpm/pool.d/www.conf 文件,其中 {version} 是你的 PHP 版本号。例如,如果你使用的是 PHP 7.4,则文件路径为 /etc/php/7.4/fpm/pool.d/www.conf。
找到以下行:
catch_workers_output = yes
将其更改为:
catch_workers_output = no
然后,找到以下行:
php_admin_value[error_log] = /var/log/php{version}-fpm.log
将其更改为:
php_admin_value[error_log] = /var/log/php{version}-fpm.log
php_admin_flag[log_errors] = on
php_admin_value[error_reporting] = E_ALL
将 {version} 替换为你的 PHP 版本号。保存文件并重启 PHP-FPM 服务:
sudo service php{version}-fpm restart
例如,如果你使用的是 PHP 7.4,则命令为:
sudo service php7.4-fpm restart
编辑 Apache 配置文件(例如 /etc/apache2/apache2.conf 或 /etc/apache2/sites-available/000-default.conf),在 <VirtualHost> 配置块中添加以下行:
php_value error_reporting E_ALL
php_value display_errors off
php_value log_errors on
php_value error_log /var/log/apache2/php_error.log
保存文件并重启 Apache 服务:
sudo service apache2 restart
编辑 Nginx 配置文件(例如 /etc/nginx/sites-available/your-site.conf),在 location ~ \.php$ 配置块中添加以下行:
fastcgi_param PHP_VALUE "error_reporting=E_ALL log_errors=on error_log=/var/log/nginx/php_error.log";
保存文件并重启 Nginx 和 PHP-FPM 服务:
sudo service nginx restart
sudo service php{version}-fpm restart
将 {version} 替换为你的 PHP 版本号。例如,如果你使用的是 PHP 7.4,则命令为:
sudo service php7.4-fpm restart
现在,PHP 错误日志级别已设置。你可以根据需要调整 error_reporting 的值以更改错误报告级别。