在 Debian 系统中,Nginx 的日志文件通常位于 /var/log/nginx/ 目录下。以下是查看 Nginx 日志的常用方法:
Nginx 的主配置文件通常位于 /etc/nginx/nginx.conf 或 /etc/nginx/sites-available/ 下的站点配置中,你可以确认日志路径:
grep -r "access_log" /etc/nginx/
grep -r "error_log" /etc/nginx/
默认情况下:
/var/log/nginx/access.log/var/log/nginx/error.log使用 tail -f 可以实时查看新写入的日志:
# 实时查看访问日志
sudo tail -f /var/log/nginx/access.log
# 实时查看错误日志
sudo tail -f /var/log/nginx/error.log
按 Ctrl + C 退出。
查看日志最后 N 行(例如最后 50 行):
sudo tail -n 50 /var/log/nginx/access.log
例如查找包含 404 或某个 IP 的访问记录:
sudo grep "404" /var/log/nginx/access.log
sudo grep "192.168.1.1" /var/log/nginx/access.log
Debian 通常会用 logrotate 自动切割并压缩旧日志:
ls -lh /var/log/nginx/
sudo zcat /var/log/nginx/access.log.1.gz | less
如果 Nginx 是以 systemd 服务运行的,错误日志也可能输出到 journald:
sudo journalctl -u nginx
sudo journalctl -u nginx -f # 实时跟踪
统计访问量最高的 IP:
sudo awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head
统计状态码分布:
sudo awk '{print $9}' /var/log/nginx/access.log | sort | uniq -c | sort -nr
如果你使用的是 Debian 12 + Nginx,上述路径和命令基本都适用。需要我帮你分析某一段具体日志吗?