了解Apache的访问日志

Boa*_*rdy 131 apache access-log

我的访问日志中这一行中的每一项内容是什么意思?

127.0.0.1 - - [05/Feb/2012:17:11:55 +0000]"GET/HTTP/1.1"200 140" - ""Mozilla/5.0(Windows NT 6.1; WOW64)AppleWebKit/535.19(KHTML,like Gecko)Chrome/18.0.1025.5 Safari/535.19"

Joa*_*son 230

您好像使用组合日志格式.

LogFormat"%h%l%u%t \"%r \"%> s%b \"%{Referer} i \"\"%{User-agent} i \""合并

  • %h是远程主机(即客户端IP)
  • %l是由identd确定的用户的身份(由于不可靠而通常不使用)
  • %u是HTTP身份验证确定的用户名
  • %t是收到请求的时间.
  • %r是来自客户端的请求行.("GET/HTTP/1.0")
  • %> s是从服务器发送到客户端的状态代码(200,404等)
  • %b是客户端响应的大小(以字节为单位)
  • Referer是HTTP请求的Referer头(包含发起此请求的页面的URL)(如果存在),"-"否则.
  • 用户代理是浏览器标识字符串.

完整的(?)格式化列表可以在这里找到.文档的同一部分还列出了其他常见的日志格式; 日志看起来不像这样的读者可能会发现他们的Apache配置使用的模式.

  • 我在用户代理之后还有4个字段,如下所示:..."Mozilla/5.0(Windows NT 5.1; rv:16.0)Gecko/20100101 Firefox/16.0"369 74500 - 567它们表示什么? (4认同)
  • @ivanceras`535.19`是使用的webkit版本,因此它是用户代理字符串的一部分(并且它也放在包含用户代理的引号内) (2认同)

geo*_*ldc 9

我也不知道" - "在日志的200 140部分之后是什么意思

该值对应于Joachim所描述的引用者.如果你看到一个短划线,那意味着没有开始的引用值(例如,用户直接进入特定目的地,就像他/她在浏览器中输入了一个URL)


vsi*_*ngh 7

什么" Mozilla/5.0(Windows NT 6.1; WOW64)AppleWebKit/535.19(KHTML,像Gecko)Chrome/18.0.1025.5 Safari/535.19 "是什么意思?

这是浏览器标识字符串User-Agent的值.

因此,大多数Web浏览器使用User-Agent字符串值,如下所示:

Mozilla/[版本]([系统和浏览器信息])[平台]([平台详细信息])[扩展].例如,iPad上的Safari使用了以下内容:

Mozilla/5.0(iPad; U; CPU OS 3_2_1,如Mac OS X; en-us)AppleWebKit/531.21.10(KHTML,类似Gecko)Mobile/7B405此字符串的组件如下:

Mozilla/5.0:以前用于表示与Mozilla渲染引擎的兼容性.(iPad; U; CPU OS 3_2_1,如Mac OS X; en-us):运行浏览器的系统的详细信息.AppleWebKit/531.21.10:浏览器使用的平台.(KHTML,与Gecko一样):浏览器平台细节.Mobile/7B405:浏览器使用此选项来指示可直接在浏览器中或通过第三方提供的特定增强功能.一个例子是Microsoft Live Meeting,它注册了一个扩展,以便Live Meeting服务知道该软件是否已经安装,这意味着它可以为加入会议提供简化的体验.

此值将用于标识最终用户正在使用的浏览器.

参考