`
zhengjunwei2007_163.com
  • 浏览: 130449 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

apache的日志access_log分析

阅读更多
当网站出问题时分析日志,第一步一般都不会是看访问日志。但是也不能忽视它,在访问日志中记录了很多的客户信息,如果你有心,可以从这个日志中获得很多有用的信息!

访问日志access_log记录了所有对Web服务器的访问活动。
正如其名字所示,访问日志access_log记录了所有对Web服务器的访问活动。

  下面是访问日志中一个典型的记录:

10.1.1.95 - e800 [18/Mar/2005:12:21:42 +0800] "GET /stats/awstats.pl?config=e800 HTTP/1.1" 200 899 "http://10.1.1.1/pv/" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Maxthon)"


  这行内容由9项构成,上面的例子中有两项空白,但整行内容仍旧分成了9项。

   第一项信息是远程主机的地址。如果你想知道这个IP地址的域名,可通过nslookup或者host命令来查看。如果你想让Apache自己找出这个IP 的主机名,可以打开这个开关:HostnameLookups。(建议最好不要打开,会影响Apache记录服务器日志的速度)
 
   第二项是空白,用一个"-"占位符替代。实际上绝大多数时候这一项都是如此。这个位置用于记录浏览者的标识,这不只是浏览者的登录名字,而是浏览者的 email地址或者其他唯一标识符。这个信息由identd返回,或者直接由浏览器返回。很早的时候,那时Netscape 0.9还占据着统治地位,这个位置往往记录着浏览者的email地址。然而,由于有人用它来收集邮件地址和发送垃圾邮件,所以它未能保留多久,很久之前市 场上几乎所有的浏览器就取消了这项功能。因此,到了今天,我们在日志记录的第二项看到email地址的机会已经微乎其微了。
 
  第三项也是e800。这个位置用于记录浏览者进行身份验证时提供的名字。当然,如果网站的某些内容要求用户进行身份验证,那么这项信息是不会空白的。但是,对于大多数网站来说,日志文件的大多数记录中这一项仍旧是空白的。

  日志记录的第四项是请求的时间。这个信息用方括号包围,而且采用所谓的"公共日志格式"或"标准英文格式"。因此,上例日志记录表示请求的时间是2005年3月18日12:21:42。时间信息最后的"+0800"表示服务器所处时区位于UTC之后的8小时。
 
  日志记录的第五项信息或许是整个日志记录中最有用的信息,它告诉我们服务器收到的是一个什么样的请求。该项信息的典型格式是"METHOD RESOURCE PROTOCOL",即"方法 资源 协议"。
 
   RESOURCE是指浏览者向服务器请求的文档,或URL。在这个例子中,浏览者请求的是"/stats/awstats.pl?config=e800 "。
 
   在上例中,METHOD是GET,其他经常可能出现的METHOD还有POST和HEAD。此外还有不少可能出现的合法METHOD,但主要就是这三种。
   
   PROTOCOL通常是HTTP,后面再加上版本号。
  
   日志记录的第六项信息是状态代码。它告诉我们请求是否成功,或者遇到了什么样的错误。大多数时候,这项值是200,它表示服务器已经成功地响应浏览器的 请求,一切正常。一般地说,以2开头的状态代码表示成功,以3开头的状态代码表示由于各种不同的原因用户请求被重定向到了其他位置,以4开头的状态代码表 示客户端存在某种错误,以5开头的状态代码表示服务器遇到了某个错误。
  
   日志记录的第七项表示发送给客户端的总字节数。它告诉我们传输是否被打断(即,该数值是否和文件的大小相同)。把日志记录中的这些值加起来就可以得知服务器在一天、一周或者一月内发送了多少数据。

  日志记录的第八项记录的是客户在提出请求时所在的目录或URL。这次的是"http://10.1.1.1/pv/"即10.1.1.1的pv目录下的首页。大多数情况下,首页会是在httpd.conf中DocumentRoot 指令后面规定的那些类型和名字的web文件。

   日志记录的第九项表示客户端的详细信息,这样你就不难理解为什么有些网站能够在页面中显示你的IP、OS、Browser了。


分享到:
评论
2 楼 J-catTeam 2010-08-11  
zhengjunwei2007_163.com 写道
问题:apache的日志中记录:
::1 - - [11/Mar/2010:07:58:26 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [11/Mar/2010:07:58:27 +0000] "OPTIONS * HTTP/1.0" 200 -
请问,此类日志是否正常?什么情况下产生此类日志?

正常的·日志格式是可以在apache里面配置的
后面那个200就是标示请求成功了
2开头的标识请求成功
3开头的标识请求被重置或者转发
4开头的标识client错误
5开头的标识server错误
其他还有很多~
1 楼 zhengjunwei2007_163.com 2010-03-12  
问题:apache的日志中记录:
::1 - - [11/Mar/2010:07:58:26 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [11/Mar/2010:07:58:27 +0000] "OPTIONS * HTTP/1.0" 200 -
请问,此类日志是否正常?什么情况下产生此类日志?

相关推荐

    apache mod_log_rotate

    此apache mod_log_rotate 是win32下vc9版的apache 日志文件管理工具。 使用: 复制mod_log_rotate.so到 Apache2/modules 确保你的系统安装了 Visual C++ 2008 Redistributable (可从这里下载:) ...

    access_log日志分析

    apache的默认日志文件分析,用于IP统计访问量,查看某一时间段的ip连接数

    apache日志分析

    windows端日志分析软件,支持FTP远程获取linux,NT,OS日志

    apache_access_log

    Python视频课程素材,提供日志数据。 技术博文可参考:https://blog.csdn.net/lsqzedu/article/details/104325903 视频课程可参考:https://study.163.com/series/1202856601.htm?share=2&shareId=6105394

    access_log.7z

    在IT行业中,"access_log"是Web服务器(如Apache或Nginx)生成的一种标准日志格式,用于追踪每个HTTP请求的详细信息。 描述中的“数据统计练习用的access_log”表明这个日志文件被用于教学或实践数据统计的目的。...

    accessLog.rar

    本篇将围绕“accessLog.rar”这个压缩包文件,探讨如何使用Spark进行日志分析,并深入解析其中的"log.log"文件。 一、Spark基础与日志分析概述 Spark是由Apache基金会开发的一个开源大数据处理框架,其核心理念是...

    ngx_log_if:Nginx的条件访问日志

    自述文件ngx_log_if_module是一个独立的模块,可让您控制何时不写下访问日志,类似于Apache中的“ CustomLog [env = XXX]”指令。指示Syntax: access_log_bypass_if (condition) [and]Default: -Scope: main/srv/loc...

    apache中使用mod_log_slow分析响应慢的请求

    `mod_log_slow`是Apache的一个第三方模块,它专门设计用于分析和记录响应时间过长的HTTP请求,从而帮助管理员识别和定位导致性能瓶颈的PHP代码。这个模块的灵感来自于MySQL的慢查询日志(slow query log),它提供了...

    基于C++语言的Apache access.log日志分析工具设计源码

    该项目是一款基于C++语言的Apache access.log日志分析工具源码,包含27个文件,涵盖7个头文件、6个C++源文件、2个图标文件、2个源代码配置文件、1个Git忽略文件、1个项目设置文件、1个工作空间文件、1个资源文件、1...

    日志文件10000_access.log

    "日志文件10000_access.log" 标题表明这是一个访问日志文件,通常与Web服务器有关,记录了用户对服务器的访问详情。"描述"提到提取了其中的10000条数据,这可能是因为原始日志文件过于庞大,为了便于分析,进行了...

    linux日志路径收集

    其日志文件通常包含两部分:访问日志(access log)和错误日志(error log)。 - **访问日志**: 记录所有HTTP请求的信息,包括客户端IP地址、请求时间、请求方法、请求URL等。 - **错误日志**: 记录Web服务器遇到的问题...

    access.log数据、用户日志分析数据

    "access.log"文件是Web服务器(如Apache或Nginx)记录所有HTTP请求的标准日志文件,它包含了用户访问网站时的各种详细信息。通过分析这些日志数据,我们可以获取到丰富的用户行为信息,帮助优化网站性能,提升用户...

    apache-log-parser:流式Apache日志解析器

    apache日志解析器 用于Apache组合访问日志的流解析器。 例子 解析日志并将每一行作为一个对象: var LogParser = require ( 'apache-log-parser' ) ; var lp = LogParser ( { format : false } ) ; fs . ...

    apache日志分析系统awStats完全教材

    ### Apache日志分析系统awStats完全教材:深入解析与实践指南 #### 一、引言:awStats在Apache日志分析中的角色 在现代网络环境中,服务器日志扮演着至关重要的角色,它们不仅记录了网站的访问情况,还提供了关于...

    Python程序设计:python apache日志分析.pptx

    Apache日志分析是系统监控和故障排查的重要环节,特别是在服务器管理中,理解并解析Apache的日志可以帮助我们了解网站的访问情况、找出潜在的问题以及优化性能。在这个任务中,我们将使用Python来处理Apache的访问...

    debian apache日志服务器配置

    Apache日志服务器配置在Debian系统中是一项关键任务,它涉及到日志的集中管理和分析,这对于监控、故障排查以及安全审计至关重要。以下是配置Debian下的Apache日志服务器的详细步骤。 首先,我们需要在服务器端安装...

    apache的access.log和error.log减肥

    Apache服务器在运行过程中会产生两种主要的日志文件:`access.log`和`error.log`,它们分别记录了HTTP请求的详细信息和服务器遇到的错误信息。这两个日志文件随着时间的推移,尤其是当网站流量较大或者存在恶意爬虫...

    apache日志分析系统免费版V1.6

    Apache日志主要由两种类型:`access.log`和`error.log`。`access.log`记录了所有HTTP请求的详细信息,如客户端IP地址、请求时间、请求的URL、HTTP响应状态码、请求方法(GET或POST)以及传输的数据量。而`error.log`...

    Awstats access_log Exporter-开源

    标题 "Awstats access_log Exporter-开源" 涉及的主要知识点是 Awstats 和 Apache 访问日志的处理,以及开源软件的应用。Awstats 是一个流行的网站统计分析工具,它可以分析服务器的访问日志,生成详细的访问报告,...

Global site tag (gtag.js) - Google Analytics