在 CentOS 上导出 Apache 日志,通常就是把日志文件复制/下载/归档出来,或者通过命令筛选后导出。下面按常见场景说明。
默认路径一般是:
# 错误日志
/var/log/httpd/error_log
# 访问日志
/var/log/httpd/access_log
如果你用的是 CentOS 7 + Apache(httpd),基本就是上面路径。
cp /var/log/httpd/access_log /root/access_log.bak
tar zcvf httpd_logs.tar.gz /var/log/httpd/
如果是服务器,用 scp:
scp root@服务器IP:/var/log/httpd/access_log ./
grep "10/Apr/2024" /var/log/httpd/access_log > access_20240410.log
grep "192.168.1.100" /var/log/httpd/access_log > ip_access.log
grep " 404 " /var/log/httpd/access_log > not_found.log
tail -n 1000 /var/log/httpd/access_log > last_1000.log
CentOS 默认会轮转日志:
/var/log/httpd/access_log
/var/log/httpd/access_log-20240401.gz
导出历史日志时别忘了这些 .gz 文件。
日志可能在:
/var/log/httpd/www.example.com-access_log
/var/log/httpd/www.example.com-error_log
✅ 定期归档
logrotate 已自动处理
✅ 分析前导出
awk '{print $1}' access_log | sort | uniq -c | sort -nr > top_ip.txt
如果你能告诉我:
我可以给你更精确的命令。