在Ubuntu系统中,清理PHP日志可以通过以下几种方法进行:
/var/log/apache2/
目录下。/var/log/nginx/
目录下。/var/log/php-fpm/
目录下。truncate
命令清空日志文件内容。例如,要清空Apache的访问日志和错误日志,可以使用以下命令:sudo truncate -s 0 /var/log/apache2/access.log
sudo truncate -s 0 /var/log/apache2/error.log
对于Nginx和PHP-FPM,请相应地替换文件名。rm
命令:sudo rm /var/log/apache2/access.log
sudo rm /var/log/apache2/error.log
sudo touch /var/log/apache2/access.log
sudo touch /var/log/apache2/error.log
对于Nginx和PHP-FPM,请相应地替换文件名。Ubuntu系统通常使用 logrotate
工具来管理日志文件的轮转和清理。
/etc/logrotate.d/apache2
(如果你使用的是Apache)或 /etc/logrotate.d/nginx
(如果你使用的是Nginx)文件,了解日志轮转的配置。sudo logrotate -f /etc/logrotate.d/apache2
或者对于Nginx:sudo logrotate -f /etc/logrotate.d/nginx
/etc/logrotate.d/
目录下的配置文件中设置日志轮转策略,例如每天或每周清理一次日志。/etc/logrotate.d/php-fpm
文件中添加以下内容:/var/log/php-fpm/*.log {
daily
missingok
rotate 7
compress
notifempty
create 0640 www-data adm
sharedscripts
postrotate
if [ -f /var/run/php-fpm/php-fpm.pid ]; then
kill -USR2 $(cat /var/run/php-fpm/php-fpm.pid)
fi
endscript
}
这个配置表示每天轮转日志文件,保留最近7天的日志文件,旧的日志文件将被压缩并删除。logrotate
配置是否正确:sudo logrotate -d /etc/logrotate.d/php-fpm
这里的 -d
选项表示“dry run”,即测试配置。logrotate
服务在系统启动时自动运行:sudo systemctl enable logrotate
sudo systemctl start logrotate
你可以使用Cron定时任务来定期清理日志文件。
crontab -e
0 0 * * * /usr/sbin/logrotate /etc/logrotate.conf
通过以上方法,你可以有效地清理Ubuntu系统中的PHP日志文件。选择适合你需求的方法进行操作即可。