`
wolf_19
  • 浏览: 165458 次
社区版块
存档分类
最新评论

Apache日志分析 之 访问日志(一)

    博客分类:
  • Web
阅读更多
这段时间公司的WEB服务器经常出问题,想在网上找一些关于Apache日志的说明,但是发现都比较老了!现在结合网上的一些文章,写一些我自己分析的心得!

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

  访问日志access_log记录了所有对Web服务器的访问活动。


  这段时间公司的WEB服务器经常出问题,想在网上找一些关于Apache日志的说明,但是发现都比较老了!现在结合网上的一些文章,写一些我自己分析的心得!

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

  正如其名字所示,访问日志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了。
分享到:
评论
1 楼 mimicom 2012-07-02  
原来如此啊... 呵呵... 

相关推荐

    APACHE日志分析工具

    很多apache日志分析工具都是要安装到服务器上的,而且安装非常麻烦,于是我写了一个单机版(exe,Windows),方便大家分析apache访问日志,绿色版的,直接解压就可以用。 功能: 1、导入apache访问日志; 2、访问...

    Apache日志分析手册

    Apache日志分析手册详细介绍了如何在Linux环境下利用Apache服务器的访问日志来分析和诊断问题。在生产环境中,服务器的运行状况往往可以通过日志文件得到反映,特别是在发现访问量异常、响应缓慢或出现错误信息时。...

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

    Apache日志分析系统免费版V1.6是一款专为管理和解析Apache服务器日志设计的工具。这个系统能够帮助用户深入理解网站的访问情况,提供详细的数据统计和分析,包括但不限于访问量、用户行为、热门页面、来源IP、浏览器...

    天智Apache日志分析器

    Apache日志分析是运维人员和网站开发者日常工作中不可或缺的一部分,它可以帮助我们理解网站的访问情况,检测潜在的问题,以及优化网站性能。"天智Apache日志分析器"是一款专为这项任务设计的工具,由VC++编程语言...

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

    #### 一、引言:awStats在Apache日志分析中的角色 在现代网络环境中,服务器日志扮演着至关重要的角色,它们不仅记录了网站的访问情况,还提供了关于用户行为、安全威胁以及系统性能的宝贵数据。Apache作为全球最...

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

    以下是一个简单的Python代码示例,展示了如何进行Apache日志分析: ```python import re # 打开日志文件 with open('access.log', 'r') as f: log_content = f.readlines() # 初始化IP计数字典 ip_counts = {} ...

    记录一次ssh日志分析和apache日志分析

    ### SSH与Apache日志分析详解 #### 一、概述 在运维工作中,日志分析是一项重要的任务,通过分析系统产生的各种日志文件可以帮助我们更好地理解系统的运行状况,及时发现潜在的安全威胁并采取措施应对。本文将详细...

    Apache访问日志分析(含源代码)

    本项目提供了一个基于C#开发的工具,专门用于解析和分析Apache访问日志。 首先,让我们深入了解一下Apache访问日志的格式。默认情况下,Apache使用“Common Log Format”(CLF)或“Combined Log Format”(CLF+...

    基于hadoop平台的pig语言对apache日志系统的分析

    标题 "基于Hadoop平台的Pig语言对Apache日志系统的分析" 涉及到的主要知识点包括Hadoop、Pig语言以及Apache服务器日志的处理。以下是对这些关键概念的详细解释: 1. Hadoop平台: Hadoop是Apache软件基金会开发的...

    Apache日志分析:获取IP地址

    2. **日志格式理解**:Apache日志一般遵循Common Log Format(CLF)或Combined Log Format(CLF扩展版),其中IP地址通常位于第一项。例如,`127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif ...

    apache日志切割

    例如,如果我们希望每天生成一个新的错误日志和访问日志文件,配置如下: ```apacheconf ErrorLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/errorlog/error.log_%Y%m%d 86400 480" CustomLog "|/usr/...

    apache日志分析

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

    Apache 访问日志分析工具

    java 读取apache访问日志并将IP和时间入库,另一个线程分析数据记录,指定时间内超过规定的访问次数,将IP添加进防火墙。以防止ddos攻击。

    天智Apache日志查看器 v1.5.zip

    【Apache日志查看器】是针对【WEB服务器】领域的一款实用工具,专为管理和解析Apache服务器产生的日志文件而设计。这款名为“天智Apache日志查看器”的软件版本为v1.5,通过其提供的功能,用户可以高效地监控、查看...

    如何按日期生成apache日志文件及限制apache日志文件大小

    理解这些配置选项和用法,可以帮助你有效地管理Apache日志,确保日志系统既能够提供必要的记录,又不会成为系统资源的负担。通过结合使用`rotatelogs`和定期清理策略,你可以创建一个高效且易于维护的日志管理体系。

    Web应用安全:apache日志配置.pptx

    在kali,访问日志被记录在”/var/log/apache2/”中,在这个文件夹中三个后缀名为“.log”的文件中(windows则保存在后缀名为“.txt”的文件中)。 日志文件 查看日志文件 apache日志配置 远程主机IP E-mail(常为空白...

    apache日志分割

    Apache日志分割是管理和分析大型Web服务器日志文件的一种常见方法。Apache,作为最流行的开源Web服务器,会产生大量的访问日志,这些日志记录了所有客户端请求的详细信息。随着时间的推移,单个日志文件可能会变得...

    debian apache日志服务器配置

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

    查看apache日志

    - `CustomLog`:这是一个重要的配置指令,用于指定访问日志的格式和位置。例如,可以配置为记录所有访问请求的日期、时间、客户端IP地址、请求方法、状态码等信息。 - `ErrorLog`:用于指定错误日志的文件位置,...

Global site tag (gtag.js) - Google Analytics