Nginx 日志占用高(磁盘空间或 IO 高)通常是由以下几类原因导致的,你可以对照排查:
表现
access.log 几个 GB 甚至几十 GB解决
access.log.2026-01-21优化示例
# 不记录静态文件
location ~* \.(js|css|png|jpg|gif)$ {
access_log off;
}
解决
access_log /var/log/nginx/access.log main buffer=32k flush=5s;
常见问题:
检查
logrotate -d /etc/logrotate.d/nginx
注意
nginx -s reload
否则磁盘空间不会释放
常见原因:
查看
tail -f /var/log/nginx/error.log
解决
limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
检查
df -i
# 查看日志大小
du -sh /var/log/nginx/*
# 查看实时写入
tail -f /var/log/nginx/access.log
# 查看 nginx 进程
ps aux | grep nginx
# 查看磁盘
df -h
如果你愿意,可以贴一下:
nginx.conf 日志相关配置du -sh /var/log/nginx/* 结果我可以帮你精准定位并给出优化方案。