在 Ubuntu 下“关闭 PHP 日志”通常分几种情况,下面按最常见场景给你说明,你可以按需选择。
php --ini
或(Apache / FPM 常见)
/etc/php/8.1/apache2/php.ini
/etc/php/8.1/fpm/php.ini
编辑对应文件:
sudo nano /etc/php/8.1/fpm/php.ini
关闭错误显示和日志:
display_errors = Off
log_errors = Off
error_log = /dev/null
如果
log_errors = On,PHP 仍会写日志,这是关键项。
Apache:
sudo systemctl restart apache2
PHP-FPM:
sudo systemctl restart php8.1-fpm
如果你是用 Apache + mod_php:
sudo nano /etc/apache2/apache2.conf
注释或删除:
php_value error_log /var/log/apache2/php_errors.log
然后:
sudo systemctl restart apache2
sudo nano /etc/php/8.1/fpm/php-fpm.conf
或 pool 配置:
sudo nano /etc/php/8.1/fpm/pool.d/www.conf
设置:
catch_workers_output = no
php_admin_value[error_log] = /dev/null
php_admin_flag[log_errors] = off
slowlog = /dev/null
request_slowlog_timeout = 0
重启:
sudo systemctl restart php8.1-fpm
error_log = /dev/null
⚠️ 生产环境不建议完全关闭日志,至少保留 error_log
在网站根目录或虚拟主机中:
ini_set('log_errors', '0');
ini_set('display_errors', '0');
php -v
ps aux | grep php
ps aux | grep nginx
ps aux | grep apache
如果你愿意,可以告诉我:
我可以直接给你精确命令。