温馨提示×

Ubuntu Apache2怎么日志

小樊
47
2026-10-08 03:20:28
栏目: 智能运维

在 Ubuntu 上使用 Apache2 时,日志相关的常见操作包括:查看日志位置、查看日志内容、配置日志格式、日志轮转、常见问题排查等。下面按实用角度给你讲清楚。


一、Apache2 日志默认位置(Ubuntu)

Apache2 的日志一般在:

/var/log/apache2/

常见日志文件:

日志文件 作用
access.log 访问日志(谁访问了什么)
error.log 错误日志(PHP、权限、500 等)
other_vhosts_access.log 虚拟主机访问日志(如启用)

查看示例:

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

二、虚拟主机单独日志(推荐)

在 /etc/apache2/sites-available/xxx.conf 中:

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

    ErrorLog ${APACHE_LOG_DIR}/example_error.log
    CustomLog ${APACHE_LOG_DIR}/example_access.log combined
</VirtualHost>

启用站点:

a2ensite example.conf
systemctl reload apache2

三、日志格式说明

combined 是常用格式:

IP - - [时间] "请求" 状态码 大小 "来源" "浏览器"

示例:

127.0.0.1 - - [10/Oct/2024:12:00:00 +0800] "GET /index.html HTTP/1.1" 200 2326 "https://x.com" "Mozilla/5.0"

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

# 实时访问日志
tail -f /var/log/apache2/access.log

# 实时错误日志(排错必看)
tail -f /var/log/apache2/error.log

只看错误:

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

五、日志轮转(自动切分)

Ubuntu 默认用 logrotate:

配置文件:

/etc/logrotate.d/apache2

一般默认已经配置好(按周/按大小切分 + 压缩)。

手动测试:

logrotate -d /etc/logrotate.d/apache2

六、常见日志问题排查

1️⃣ 网站 500 错误

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

常见原因:

  • PHP 语法错误
  • 文件权限问题
  • .htaccess 错误

2️⃣ 403 Forbidden

错误日志常见:

AH01276: Permission denied

解决:

chown -R www-data:www-data /var/www
chmod -R 755 /var/www

3️⃣ 没有 access.log

检查:

apache2ctl -S

确认 CustomLog 是否配置。


七、常用命令速查

# 重启 Apache
systemctl restart apache2

# 查看错误
journalctl -u apache2

# 测试配置
apache2ctl configtest

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

  • 你是 想查错误 / 统计访问 / 做日志分析
  • 是否使用 虚拟主机 / HTTPS / PHP

我可以直接给你对应的日志配置示例。

0 踩