温馨提示×

怎样用linux查nginx日志

小樊
47
2026-09-11 13:19:54
栏目: 智能运维

在 Linux 下查看 Nginx 日志通常分为访问日志(access log)错误日志(error log),下面按常见场景说明。


一、找到 Nginx 日志位置

1. 查看 Nginx 配置

nginx -t

输出中会显示配置文件路径,如:

/etc/nginx/nginx.conf

2. 查看日志路径

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

常见默认路径:

  • 访问日志:/var/log/nginx/access.log
  • 错误日志:/var/log/nginx/error.log

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

实时查看访问日志

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

实时查看错误日志

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

Ctrl + C 退出


三、查看历史日志

查看最后 100 行

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

查看最前面的内容

head -n 50 /var/log/nginx/access.log

查看整个日志

less /var/log/nginx/access.log
  • 空格:下一页
  • b:上一页
  • /关键词:搜索
  • q:退出

四、搜索日志内容

查找某个 IP

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

查找 404 错误

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

查找某个时间段的请求

grep "10/Oct/2024:14:" /var/log/nginx/access.log

五、统计类分析

统计访问最多的 IP

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

统计请求最多的 URL

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

统计状态码分布

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

六、日志被压缩(logrotate)

Nginx 日志常被切割:

ls /var/log/nginx/

可能看到:

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

查看压缩日志:

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

七、结合 journalctl(systemd)

如果是系统服务方式运行:

journalctl -u nginx
journalctl -u nginx -f

如果你愿意,可以告诉我:

  • 你用的是 Ubuntu / CentOS / 容器
  • 想查 访问异常 / 报错 / 性能问题

我可以给你更精确的命令。

0