转自:http://hi.baidu.com/bxhack/item/71025d3e65987d88b611db5e

apache日志存放位置

Windows: <Apache安装目录>\logs\access.log | error.log

Linux:  /usr/local/apache/logs/access_log | error_log

apache的好处 是 可以自己定制日志,定制的方法和定制的内容,总结如xia :

定制日志文件的格式涉及到两个指令,即LogFormat指令和CustomLog指令。默认httpd.conf文件提供了关于这两个指令的几个示例。  
  LogFormat指令:定义格式并为格式指定一个名字,以后我们就可以直接引用这个名字。
  CustomLog指令:设置日志文件,并指明日志文件所用的格式(通常通过格式的名字)。  
 
  LogFormat指令的功能是定义日志格式并为它指定一个名字。例如,在默认的httpd.conf文件中,我们可以找到下面这行代码:  
    LogFormat "%h %l %u %t \"%r\" %>s %b" common  
  该指令创建了一种名为“common”的日志格式,日志的格式在双引号包围的内容中指定。格式字符串中的每一个变量代表着一项特定的信息,这些信息按照格式串规定的次序写入到日志文件。   Apache文档已经给出了所有可用于格式串的变量及其含义,下面是其译文:  
     %a: 远程IP地址  
     %A: 本地IP地址  
     %B: 已发送的字节数,不包含HTTP头  
     %b: CLF格式的已发送字节数量,不包含HTTP头。例如当没有发送数据时,写入‘-’而不是0。  
      %{FOOBAR}e: 环境变量FOOBAR的内容  
      %f: 文件名字  
      %h: 远程主机  
      %H 请求的协议  
      %Foobar}i: Foobar的内容,发送给服务器的请求的标头行。  
      %l: 远程登录名字(来自identd,如提供的话)  
      %m: 请求的方法  
      %{Foobar}n: 来自另外一个模块的注解“Foobar”的内容  
      %{Foobar}o: Foobar的内容,应答的标头行  
      %p: 服务器响应请求时使用的端口  
      %P: 响应请求的子进程ID。  
      %q: 查询字符串(如果存在查询字符串,则包含“?”后面的部分;否则,它是一个空字符串。)  
      %r: 请求的第一行  
      %s: 状态。对于进行内部重定向的请求,这是指*原来*请求的状态。如果用%...>s,则是指后来的请求。  
      %t: 以公共日志时间格式表示的时间(或称为标准英文格式)  
     %{format}t: 以指定格式format表示的时间  
      %T: 为响应请求而耗费的时间,以秒计  
      %u: 远程用户(来自auth;如果返回状态(%s)是401则可能是伪造的)  
      %U: 用户所请求的URL路径  
      %v: 响应请求的服务器的ServerName  
      %V: 依照UseCanonicalName设置得到的服务器名字  
  分析前面来自默认httpd.conf文件的LogFormat指令示例,可以看出它创建了一种名为“common”的日志格式,其中包括:远程主机,远程登录名字,远程用户,请求时间,请求的第一行代码,请求状态,以及发送的字节数。      LogFormat "%V %h %l %u %t \"%r\" %>s %b" common
    【补充】"<"和">"修饰符可以用来指定对于已被内部重定向的请求是选择原始的请求还是选择最终的请求。默认情况下,%s, %U, %T, %D, %r 使用原始请求,而所有其他格式串则选择最终请求。例如,%>s 可以用于记录请求的最终状态,而 %<u 则记录一个已经被内部重定向到非认证资源的请求的原始认证用户。
  如果在“%”和变量之间放入了一个或者多个HTTP状态代码,则只有当请求返回的状态代码属于指定的状态代码之一时,变量所代表的内容才会被记录。例如,如果我们想要记录的是网站的所有无效链接,那么可以使用:  
     LogFormat %404{Referer}i BrokenLinks  
  反之,如果我们想要记录那些状态代码不等于指定值的请求,只需加入一个“!”符号即可: 
   LogFormat %!200U SomethingWrong

至于如何修改 apache的日志,也很简单只需修改apache的配置文件文件就可以了。

apache日志设置的更多相关文章

  1. Apache 日志设置不记录指定文件类型的方法和日志轮

    Apache日志精准的记录了Web访问的记录,但对于访问量很大的站来说,日志文件过大对于分析和保存很不方便.可以在http.conf(或虚拟主机设置文件httpd-vhosts.conf)中进行设置, ...

  2. Apache日志不记录图片文件设置方法和来源日志的配置

    Apache日志不记录图片文件设置方法 <FilesMatch "\.(ico|gif|jpg|swf)">SetEnv IMAG 1</FilesMatch&g ...

  3. elk系列7之通过grok分析apache日志

    preface 说道分析日志,我们知道的采集方式有2种: 通过grok在logstash的filter里面过滤匹配. logstash --> redis --> python(py脚本过 ...

  4. tomcat7 日志设置为log4j

    tomcat的日志设置用log4j的官方文档:http://tomcat.apache.org/tomcat-7.0-doc/logging.html 1. 下载tomcat-juli.jar, to ...

  5. Apache日志配置参数详细说明

    Apache日志按时间分段记录 在apache的配置文件httpd.conf中找到ErrorLog logs/error_log及CustomLog logs/access_log common Li ...

  6. Apache日志配置详解(rotatelogs LogFormat)

    logs/error_logCustomLog logs/access_log common--默认为以上部分 修改为如下: ErrorLog "|/usr/sbin/rotatelogs ...

  7. Apache日志轮替规则

     linux : |/usr/local/sbin/cronolog /web/apache/logs/%Y%m%daccess_log    <IfModule log_config_modu ...

  8. apache日志切割

    一.日志切割 安装cronolog CentOS 5.4中编译安装Apache默认日志是不切割的,需要用用工具Cronnolog进行日志切割 1.下载及安装 wget http://cronolog. ...

  9. apache日志文件详解和实用分析命令

    apache日志文件每条数据的请意义,以及一些实用日志分析命令. 一.日志分析  如果apache的安装时采用默认的配置,那么在/logs目录下就会生成两个文件,分别是access_log和error ...

随机推荐

  1. 看下面代码输出结果Java

    编译错误 在调用子类构造器之前,会先调用父类构造器,当子类构造器中没有使用"super(参数或无参数)"指定调用父类构造器时,是默认调用父类的无参构造器,如果父类中包含有参构造器, ...

  2. idea调试SpringMvc, 出现:”Can't find catalina.jar"错误的解决方法

    用gradle构建的项目,点击运行出现以下错误提示: Error running PraticeWeb: Can't find catalina.jar 21:54 Error running Pra ...

  3. surging+EFCore 服务实现入门

    准备工作 本篇文章基于上篇基础上进行的,请先了解此篇  surging+CentOS7+docker+rancher2.0 菜鸟部署运行笔记 开发环境  Visual Studio 2017 15.5 ...

  4. 开发过程中--使用base64解决传输字符串加密问题!

    反正上周在解决开发公司小工具时,需要将用户输入的字符串加密处理传输,那就直接贴上代码吧,希望能帮上你们: strToArrayBufferToBase64(str) { let pos = 0, le ...

  5. Boost Python官方样例(二)

    返回值 使用return_by_value有点像C++ 11的auto关键字,可以让模板自适应返回值类型(返回值类型必须是要拷贝到新的python对象的任意引用或值类型),可以使用return_by_ ...

  6. PAT1098【插入排序+堆排序】

    简单插入排序: 简单插入排序的核心思想: 把一条这么个难看的序列默认分为两个排好序的和未排好序的两个部分: 所以一开始排好序的只有一个a[0](好看的只有一个),难看的有N(数组长度)-1个a[1,n ...

  7. UIDevice的简易说明

    typedef NS_ENUM(NSInteger, UIDeviceOrientation) //设备方向 { UIDeviceOrientationUnknown, UIDeviceOrienta ...

  8. POJ1046 Color Me Less

    题目来源:http://poj.org/problem?id=1046 题目大意: 在RGB颜色空间中,用下面的公式来度量两个颜色值的距离. 现给出16个RGB表示的颜色,和一些用于测试的颜色,求被测 ...

  9. PHPExcel探索之旅---阶段三 绘制图表

    利用PHPExcel插件进行绘制图表 <?php /** * 使用PHPExcel插件在excel文件中利用其中的数据建立折线图 * */ $dir = dirname(__FILE__); r ...

  10. POJ 1061青蛙的约会。求解(x+mT)%L=(y+nT)%L的最小步数T。

    因为是同余,所以就是(x+mT)%L-(y+nT)%L=0.可以写成(x-y+(m-n)T)%L=0.就是这个数是L的倍数啦.那么我可以这样x-y+(m-n)T + Ls = 0.就可以了,s可正可负 ...