网站流量全靠猜?GoAccess 一个命令把 access.log 变成可视化报表

来源:互联网 时间:2026-08-28

 

想看昨天哪个页面流量最大、蜘蛛抓了多少、404 都出在哪,去后台翻统计插件数据又慢又不全——统计脚本本身还拖累页面速度。其实答案全在 access.log 里,GoAccess 能把日志直接变成终端里的实时报表,不碰你的网站一行代码。

# 安装

yum install -y epel-release && yum install -y goaccess

# 最常用的命令:实时终端报表

goaccess /var/log/nginx/access.log --log-format=COMBINED

# 安装
yum install -y epel-release && yum install -y goaccess

# 最常用的命令:实时终端报表
goaccess /var/log/nginx/access.log --log-format=COMBINED

回车后就是一块信息面板:独立访客数、请求量、带宽、404 清单、来路域名、操作系统、浏览器、爬虫命中,全在滚动条里切换。数据是直接从日志算的,比任何 JS 统计都真实——JS 统计算不到搜索引擎爬虫,而站长恰恰需要知道爬虫在干什么。

三个站长最该看的面板。第一是爬虫(Crawlers),Google 的抓取量突然腰斩,大概率是网站出了问题,能比搜索排名掉下来早发现两周。第二是 404 页面,外链打错、改版没做 301 的死链全在这,挑权重高的补跳转。第三是状态码分布,502 一多就回去翻 PHP-FPM 那篇。

想给别人看,生成一份 HTML 报表更直观:

# 生成静态HTML报表
goaccess /var/log/nginx/access.log \
--log-format=COMBINED -o /var/www/report.html

# 实时HTML( WebSocket 推送)
goaccess /var/log/nginx/access.log \
--log-format=COMBINED -o /var/www/report.html --real-time-html --daemonize

报表文件记得放到有密码保护的目录,流量数据是商业敏感信息,别裸奔在公网。

进阶用法是结合 awk 做日志里没有的维度,比如查某个 IP 的全部访问轨迹再喂给 fail2ban,几件工具串起来就是一套简易风控。日志是服务器最诚实的记录员,学会用它,比装十个统计插件都管用。

数据来源:GoAccess官方文档

相关文章

标签:

A5创业网 版权所有