在Ubuntu系统中配置PHP错误报告级别,可以通过修改PHP配置文件php.ini
来实现。以下是详细步骤:
打开终端:
sudo nano /etc/php/7.x/cli/php.ini
请将7.x
替换为你当前安装的PHP版本号。
找到错误报告设置:
在php.ini
文件中搜索以下行:
error_reporting = E_ALL
display_errors = Off
log_errors = On
error_log = /var/log/php_errors.log
修改错误报告级别:
error_reporting
:设置为E_ALL
表示报告所有错误。display_errors
:设置为On
表示在浏览器中显示错误(仅在开发环境中使用)。log_errors
:设置为On
表示将错误记录到日志文件中。error_log
:指定错误日志文件的路径。例如,如果你只想报告警告和错误,可以这样设置:
error_reporting = E_WARNING | E_ERROR
display_errors = Off
log_errors = On
error_log = /var/log/php_errors.log
保存并退出:
按Ctrl + X
,然后按Y
确认保存,最后按Enter
退出。
重启PHP-FPM或Apache服务:
sudo systemctl restart php7.x-fpm
sudo systemctl restart apache2
如果你希望通过Web服务器(如Nginx或Apache)来控制错误报告级别,可以在相应的配置文件中进行设置。
编辑Nginx配置文件:
sudo nano /etc/nginx/sites-available/default
添加或修改PHP错误处理配置:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.x-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
# 错误报告设置
fastcgi_param PHP_VALUE "error_reporting=E_ALL";
fastcgi_param PHP_VALUE "display_errors=Off";
fastcgi_param PHP_VALUE "log_errors=On";
fastcgi_param PHP_VALUE "error_log=/var/log/php_errors.log";
}
保存并退出:
按Ctrl + X
,然后按Y
确认保存,最后按Enter
退出。
重启Nginx服务:
sudo systemctl restart nginx
编辑Apache配置文件:
sudo nano /etc/apache2/apache2.conf
添加或修改PHP错误处理配置:
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
# 错误报告设置
php_value error_reporting E_ALL
php_value display_errors Off
php_value log_errors On
php_value error_log /var/log/php_errors.log
</Directory>
保存并退出:
按Ctrl + X
,然后按Y
确认保存,最后按Enter
退出。
重启Apache服务:
sudo systemctl restart apache2
通过以上方法,你可以在Ubuntu系统中灵活地配置PHP错误报告级别,以满足不同的开发和生产需求。