温馨提示×

ubuntu apache如何开日志

小樊
45
2026-09-30 16:54:42
栏目: 智能运维

在 Ubuntu 上通过 Apache(通常是 apache2)开启和配置日志,主要涉及访问日志(access log)和错误日志(error log)。下面按常见场景说明。


一、Apache 日志默认情况

在 Ubuntu 中:

  • Apache 服务名:apache2
  • 日志目录:/var/log/apache2/
  • 默认已开启日志:
    • 访问日志:/var/log/apache2/access.log
    • 错误日志:/var/log/apache2/error.log

如果没改过配置,日志一般是开着的。


二、确认 Apache 是否安装并运行

sudo systemctl status apache2

没启动可运行:

sudo systemctl start apache2

三、开启 / 配置访问日志

1. 编辑虚拟主机或全局配置

常见配置文件位置:

  • 全局:/etc/apache2/apache2.conf
  • 虚拟主机:/etc/apache2/sites-available/000-default.conf

示例(虚拟主机中):

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

    # 访问日志
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    # 错误日志
    ErrorLog ${APACHE_LOG_DIR}/error.log
</VirtualHost>

combined 是常用日志格式,包含 IP、时间、请求、状态码、User-Agent 等。


四、开启详细错误日志(调试用)

编辑:

sudo nano /etc/apache2/apache2.conf

找到:

LogLevel warn

可改为:

LogLevel info
# 或调试级别
LogLevel debug

⚠️ 生产环境不建议长期用 debug


五、按站点分开日志(推荐)

<VirtualHost *:80>
    ServerName site1.com
    CustomLog ${APACHE_LOG_DIR}/site1-access.log combined
    ErrorLog ${APACHE_LOG_DIR}/site1-error.log
</VirtualHost>

六、启用配置并重载 Apache

sudo apache2ctl configtest
sudo systemctl reload apache2

七、查看日志

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

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

八、常见问题

1. 日志没生成?

  • 确认 CustomLog / ErrorLog 已配置
  • 确认目录权限:
sudo chown -R www-data:adm /var/log/apache2

2. 日志太大?

可开启 logrotate(Ubuntu 默认已配置):

cat /etc/logrotate.d/apache2

如果你是想:

  • 开 HTTPS 站点日志
  • 开 PHP 错误日志
  • 或 Docker / Nginx 反代场景

可以告诉我具体环境,我给你更精确的配置。

0 踩