温馨提示×

如何在Debian查看Nginx日志

小樊
43
2026-09-16 11:37:01
栏目: 智能运维

在 Debian 系统中,Nginx 的日志文件通常位于 /var/log/nginx/ 目录下。以下是查看 Nginx 日志的常用方法:

1. 查看日志文件位置

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

2. 实时查看日志(推荐)

使用 tail -f 可以实时查看新写入的日志:

# 实时查看访问日志
sudo tail -f /var/log/nginx/access.log

# 实时查看错误日志
sudo tail -f /var/log/nginx/error.log

按 Ctrl + C 退出。

3. 查看最近的日志内容

查看日志最后 N 行(例如最后 50 行):

sudo tail -n 50 /var/log/nginx/access.log

4. 搜索特定内容

例如查找包含 404 或某个 IP 的访问记录:

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

5. 查看被压缩的旧日志

Debian 通常会用 logrotate 自动切割并压缩旧日志:

ls -lh /var/log/nginx/
sudo zcat /var/log/nginx/access.log.1.gz | less

6. 使用 journalctl(如果 Nginx 由 systemd 管理)

如果 Nginx 是以 systemd 服务运行的,错误日志也可能输出到 journald:

sudo journalctl -u nginx
sudo journalctl -u nginx -f   # 实时跟踪

7. 常用分析命令示例

统计访问量最高的 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,上述路径和命令基本都适用。需要我帮你分析某一段具体日志吗?

0 踩