这是一个关于使用访问作为网站分析工具。我已在 nginx 服务器上设置了它,并且可以很好地解析日志,但似乎许多对我自己的网站的请求在 HTTP 标头中都没有 Referer。有没有一种直接获取此信息的方法?显然,我知道还有其他网站有指向我自己的网站的链接(例如 Github 项目或 HackerNews 故事),但它们从未出现在 goaccess referer 信息中。
我也知道,我可能完全误解了和/或试图扩展基本上是一个简单的访问日志查看器的限制。话虽如此,其他分析软件如何获取引荐来源信息?Google Analytics、Piwik 和 Mint 似乎都相当可靠地做到了这一点。
编辑-这是我的日志文件中的几行。在这种情况下,我知道我是从 Github.com 链接进入网站的,我本以为它会显示为引用者。紧接着的下一行是访问样式表的地方,它正确地将引用者标识为访问它的网站。
69.139.121.104 - - [07/May/2013:18:57:46 -0400] "GET /2013/04/13/introducing-ratchet.html HTTP/1.1" 200 2195 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/536.29.13 (KHTML, like Gecko) Version/6.0.4 Safari/536.29.13"
69.139.121.104 - - [07/May/2013:18:57:46 -0400] "GET /css/styles.css HTTP/1.1" 200 1161 "http://micahmcfarland.com/2013/04/13/introducing-ratchet.html" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/536.29.13 (KHTML, like Gecko) Version/6.0.4 Safari/536.29.13"
編輯2-我看不到引用者,因为 https 和 http 之间没有发送引用者信息。不知道我怎么会不知道这一点,但非常感谢阅读,别介意!
答案1
我使用 GoAccess,它能很好地报告 referer 字段。我想说:
- 确保 nginx 在你的日志中记录 referer 数据,否则
goaccess
不会报告 - 确保您在 中配置了正确的日志格式字符串
~/.goaccessrc
。
请记住,引荐来源是由客户端浏览器发送的,因此不可靠。它可能不存在,也可能是伪造的。
另外,您能否从 nginx 日志中发布几行未报告且包含 referer 的内容?
Google Analytics 不依赖日志文件。