温馨提示×

ubuntu apache2怎样日志

小樊
42
2026-09-14 07:54:13
栏目: 智能运维

在 Ubuntu 上,使用 Apache2 时,日志一般分为 访问日志错误日志。下面给你一份常用说明。


一、Apache2 日志位置(默认)

Ubuntu 下 Apache2 默认日志目录:

/var/log/apache2/

常见日志文件:

/var/log/apache2/access.log     # 访问日志
/var/log/apache2/error.log      # 错误日志

如果你启用了虚拟主机(vhost),通常每个站点会有独立日志:

/var/log/apache2/example.com-access.log
/var/log/apache2/example.com-error.log

二、查看日志

1. 实时查看日志

sudo tail -f /var/log/apache2/access.log
sudo tail -f /var/log/apache2/error.log

2. 查看最近 100 行

sudo tail -n 100 /var/log/apache2/error.log

3. 搜索关键字

sudo grep "404" /var/log/apache2/access.log
sudo grep "PHP" /var/log/apache2/error.log

三、Apache2 日志配置

1. 主配置文件

/etc/apache2/apache2.conf

2. 虚拟主机日志配置

通常在:

/etc/apache2/sites-available/000-default.conf

示例:

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/html

    ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
    CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
</VirtualHost>

修改后重启 Apache:

sudo systemctl restart apache2

四、日志格式说明(combined)

默认 combined 格式示例:

192.168.1.10 - - [01/Jan/2026:10:00:00 +0800] "GET /index.html HTTP/1.1" 200 2326 "https://example.com/" "Mozilla/5.0"

字段含义:

  • IP 地址
  • 时间
  • 请求方法 + URL
  • 状态码(200 / 404 / 500 等)
  • 响应大小
  • Referer
  • User-Agent

五、日志轮转(Logrotate)

Ubuntu 默认使用 logrotate 管理 Apache 日志:

配置文件:

/etc/logrotate.d/apache2

一般会自动:

  • 每天或每周切割
  • 压缩旧日志
  • 保留一定时间

手动执行:

sudo logrotate -f /etc/logrotate.d/apache2

六、常见问题排查

Apache 启动失败

sudo journalctl -u apache2
sudo cat /var/log/apache2/error.log

权限问题

确保日志目录权限正确:

sudo chown -R www-data:adm /var/log/apache2

如果你有具体需求(比如 只看某个 IP、统计访问量、PHP 报错、HTTPS 日志、Docker 中的 Apache),可以告诉我,我给你更针对性的命令。

0