在 Ubuntu 上,Apache 的日志通常位于 /var/log/apache2/ 目录下。你可以根据需要导出(复制、打包或下载)这些日志文件。以下是常见做法:
默认路径:
/var/log/apache2/access.log # 访问日志
/var/log/apache2/error.log # 错误日志
/var/log/apache2/other_vhosts_access.log
如果你使用了虚拟主机,可能还有:
/var/log/apache2/your-site-access.log
/var/log/apache2/your-site-error.log
查看 Apache 配置中的日志路径:
grep -R "CustomLog" /etc/apache2/
grep -R "ErrorLog" /etc/apache2/
cp /var/log/apache2/access.log ~/
cp /var/log/apache2/error.log ~/
tar -czf apache_logs.tar.gz /var/log/apache2/
在本地终端执行:
scp user@server_ip:/var/log/apache2/access.log ./
或打包后导出:
scp user@server_ip:/home/user/apache_logs.tar.gz ./
例如导出今天的访问日志:
grep "$(date '+%d/%b/%Y')" /var/log/apache2/access.log > today_access.log
awk '$4 >= "[10/Oct/2024:00:00:00" && $4 <= "[10/Oct/2024:23:59:59"' \
/var/log/apache2/access.log > oct10.log
Ubuntu 默认会轮转日志:
ls -lh /var/log/apache2/
导出所有历史日志:
tar -czf apache_all_logs.tar.gz /var/log/apache2/
goaccess 导出为 HTMLsudo apt install goaccess
goaccess /var/log/apache2/access.log -o report.html
awk / cut 提取字段awk '{print $1, $4, $7}' /var/log/apache2/access.log > simple_log.txt
sudo 权限查看日志:sudo less /var/log/apache2/error.log
du -sh 查看大小如果你能说明:
我可以给你更精确的命令。