在 CentOS 上清理 PHP 日志,主要取决于你使用的是 PHP-FPM 还是 Apache + mod_php,以及日志的存放位置。下面是常见、实用的方法。
php-fpm -i | grep 'error_log'
常见路径:
/var/log/php-fpm/error.log
/var/log/php-fpm/www-error.log
或者查看配置文件:
grep error_log /etc/php-fpm.conf
grep error_log /etc/php-fpm.d/www.conf
php --ini | grep Loaded
然后查看:
grep error_log /etc/php.ini
常见路径:
/var/log/php_error.log
/var/log/httpd/error_log
> /var/log/php-fpm/error.log
或
truncate -s 0 /var/log/php-fpm/error.log
✅ 不会影响服务运行
rm -f /var/log/php-fpm/error.log
⚠️ 缺点:
# 不需要重启
systemctl restart php-fpm
创建或编辑:
vim /etc/logrotate.d/php-fpm
示例配置:
/var/log/php-fpm/*.log {
daily
missingok
rotate 7
compress
notifempty
create 0640 www-data www-data
postrotate
systemctl reload php-fpm > /dev/null 2>&1
endscript
}
手动测试:
logrotate -vf /etc/logrotate.d/php-fpm
# 查看 PHP 日志位置
grep error_log /etc/php-fpm.conf /etc/php-fpm.d/*.conf /etc/php.ini
# 清空日志(推荐)
> /var/log/php-fpm/error.log
# 重启 PHP-FPM
systemctl restart php-fpm
cp /var/log/php-fpm/error.log /var/log/php-fpm/error.log.bak
rm -rf /var/log/*如果你愿意,可以告诉我:
我可以给你一套最合适的具体方案 ✅