在 Ubuntu 上开启(或确认)Apache 日志,主要涉及 错误日志(error.log) 和 访问日志(access.log)。下面按常见场景说明。
sudo systemctl status apache2
如果未安装:
sudo apt update
sudo apt install apache2
Ubuntu 下 Apache 日志默认在:
/var/log/apache2/
├── access.log # 访问日志
├── error.log # 错误日志
├── other_vhosts_access.log
✅ 默认情况下日志是开启的
Apache 的主配置文件:
/etc/apache2/apache2.conf
虚拟主机配置:
/etc/apache2/sites-enabled/
查看是否包含日志相关指令:
grep -R "ErrorLog\|CustomLog" /etc/apache2/
在 apache2.conf 中通常已有:
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
编辑你的站点配置,例如:
sudo nano /etc/apache2/sites-enabled/000-default.conf
确保包含:
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
✅ combined 是常用日志格式
常见格式:
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
Ubuntu 默认已定义 combined
# 访问日志
tail -f /var/log/apache2/access.log
# 错误日志
tail -f /var/log/apache2/error.log
sudo systemctl restart apache2
sudo touch /var/log/apache2/access.log
sudo touch /var/log/apache2/error.log
sudo chown -R www-data:adm /var/log/apache2
ls -l /var/log/apache2
LogLevel debug
可选值:
emerg alert crit error warn notice info debug
⚠️ 不建议生产环境长期开启 debug
如果你愿意,可以告诉我:
我可以给你一份定制配置示例。