温馨提示×

nginx日志怎么查看

小樊
50
2026-07-07 14:39:10
栏目: 编程语言

查看 Nginx 日志主要分两种情况:访问日志(access.log)错误日志(error.log),下面按常见场景给你一个完整说明。


一、Nginx 日志默认位置

1️⃣ 常见默认路径

/var/log/nginx/access.log
/var/log/nginx/error.log

2️⃣ 如果是源码安装或自定义配置

查看 nginx.conf 中的日志路径:

nginx -V 2>&1 | grep -o 'conf-path=\S*'

或直接查看配置:

grep -R "access_log\|error_log" /etc/nginx/

二、实时查看日志(最常用)

✅ 实时查看访问日志

tail -f /var/log/nginx/access.log

✅ 实时查看错误日志

tail -f /var/log/nginx/error.log

Ctrl + C 停止


三、查看最近 N 行日志

tail -n 100 /var/log/nginx/access.log

四、搜索指定内容(排查问题)

1️⃣ 查找 500 错误

grep " 500 " /var/log/nginx/access.log

2️⃣ 查找某个 IP

grep "1.2.3.4" /var/log/nginx/access.log

3️⃣ 查找某个接口

grep "/api/login" /var/log/nginx/access.log

五、按时间查看日志

1️⃣ 查看今天的日志

grep "$(date +%d/%b/%Y)" /var/log/nginx/access.log

2️⃣ 查看指定时间段(如 10:00–11:00)

awk '$4 >= "[10:00:00" && $4 <= "[11:00:00"' /var/log/nginx/access.log

六、查看错误日志(重点)

查看最近错误

tail -n 50 /var/log/nginx/error.log

常见错误级别

  • [error]
  • [warn]
  • [crit]

七、日志被切割(logrotate)

很多服务器日志是 按天切割 的:

ls /var/log/nginx/

你可能会看到:

access.log
access.log.1
access.log.2.gz

查看历史日志:

zcat /var/log/nginx/access.log.2.gz | less

八、确认 Nginx 是否正在记录日志

nginx -t

如果配置错误,日志可能不写入。


九、简单示例:快速定位 502 问题

tail -f /var/log/nginx/error.log

常见提示:

  • connect() failed
  • upstream prematurely closed connection

十、实用组合命令(推荐)

统计访问最多的 IP

awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head

统计访问最多的接口

awk '{print $7}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head

如果你愿意,可以把 具体报错信息、系统版本(CentOS / Ubuntu)、访问日志格式 发给我,我可以帮你精准分析 Nginx 问题

0