相关信息

1.apache日志有访问日志和错误日志,错误日志根据日志级别来输出错误信息,而访问日志根据定义的日志格式来记录访问动作

2.访问日志格式在httpd.conf文件里面定义,在虚拟主机里面引用

3.如果网站访问量大,那么很容易造成访问日志过大,所以对访问日志进行自动切割非常有必要

4.本篇日志使用的日志分割工具是apache自己的rotatelogs工具

思路:在httd.conf中选择合适自己的日志格式>在虚拟主机的配置文件里引用并分割

第一:选择合适的日志格式

①打开httpd.conf文件

vim /usr/local/apache/conf/httpd.conf

②找到<If Module log_config_module>标签,内容如下(后面的文字是解释内容):

ErrorLog "logs/error_log" 错误日志
LogLevel warn 警告级别为warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined 复合日志格式
LogFormat "%h %l %u %t \"%r\" %>s %b" common 常规日志格式
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio 复合日志格式
</IfModule>
CustomLog "logs/access_log" common 默认访问日志存放路径和格式,如果虚拟主机中不定义的话就是用这个
</IfModule>

我们使用的是如下这个日志格式,因为这个格式记录的东西比较丰富

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined 复合日志格式

 第二:在虚拟主机中配置日志格式并切割

①:打开虚拟主机配置文件

vim /usr/local/apache/conf/extra/httpd_vhosts.conf

②:注释掉原来的内容

#CustomLog "logs/dummy-host.example.com-access_log" common

③:插入如下代码

 CustomLog "|/usr/local/apache/bin/rotatelogs -l logs/discuz.expeak.com-access_%Y%m%d.log 86400" combined env=!paichu

|/usr/local/apache/bin/rotatelogs 指定使用rotatelogs工具 ,-l 参数是指定访问日志存放路径, %Y%m%d 是日志以年月日来命名,  是秒,换算过来也就是一天,也就是说一天切割一次日志。 combined 是日志格式,也就是说使用combined这个日志格式来记录日志。

扩展内容:排除图片和css、js等内容的日志记录

说明:默认的日志会记录所有访问内容,包括各种图片、css、js等,那如何过滤掉这些内容的,请看下面:

①在虚拟主机标签中设置要排除的内容(后面的文字是解释)

SetEnvIf Request_URI "\.(gif|jpg|png|css|js)$" paichu   匹配所有请求中包含.gif.jpg.png.css.js的内容,起名字为paichu

②在日志设置语句中添加排除

CustomLog "|/usr/local/apache/bin/rotatelogs -l logs/discuz.expeak.com-access_%Y%m%d.log 86400" combined env=!paichu

env=!paichu 的中!是否定的意思,也就是不等于排除

apache2.4配置访问日志分割并过滤图片CSS等无用内容的更多相关文章

  1. tomcat配置访问日志,访问首页主目录

    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" ...

  2. 配置tomcat日志分割

    由于Tomcat在默认情况下会将没有经过配置的web应用所产生的日志输出已及其本身的日志内容都输出到这个文件中,那么随着时间的推移,这个文件的尺寸将会越来越大,当需要检查日志内容时间会导致文件难以打开 ...

  3. linux环境下安装tomcat并配置tomcat日志分割

    1.直接解压apache-tomcat-7.0.69.tar.gz 存放在/home目录下 根据需要自定义tomcat名称 mv apache-tomcat-7.0.69 Tomcat7 2.解压cr ...

  4. apache 访问日志access_log 配置和解析 rotatelogs分割日志

    一.解析访问日志        apache 的访问日志记载着大量的信息,学会高效快捷的读出其中关键信息对我们的工作有极大帮助.       如果Apache的安装方式是默认安装,服务器一运行就会有两 ...

  5. Tomcat访问日志详细配置

    在server.xml里的<host>标签下加上 <Valve className="org.apache.catalina.valves.AccessLogValve&q ...

  6. Nginx 笔记与总结(4)配置 server 访问日志

    打开 nginx.conf: [root@localhost ~]# cd /usr/local/nginx/conf [root@localhost conf]# vim nginx.conf 在默 ...

  7. Tomcat访问日志详细配置(转)

    在server.xml里的<host>标签下加上<Valve className="org.apache.catalina.valves.AccessLogValve&qu ...

  8. 转 Tomcat访问日志详细配置

    配置http访问日志.Tomcat自带的能够记录的http访问日志已经很详细了取消下面这段的注释: <Valve className="org.apache.catalina.valv ...

  9. Nginx 访问日志

    配置访问日志: [root@localhost ~]$ cat /usr/local/nginx/conf/nginx.conf http { log_format main '$remote_add ...

随机推荐

  1. Resharper 8.2 注册码

    用户名:ronle注册码:ZoJzmeVBoAv9Sskw76emgksMMFiLn4NM

  2. LintCode Longest Common Substring

    原题链接在这里:http://www.lintcode.com/en/problem/longest-common-substring/# 题目: Given two strings, find th ...

  3. CentOS下使用Postfix + Dovecot + Dnsmasq搭建极简局域网邮件系统

    背景 开发环境为局域网,工作内容需要经常查看邮件文件(*.eml),可恶的Foxmail必须验证账户才能进入主界面,才能打开eml文件查看. 无奈搭一个局域网内的邮件系统吧.极简搭建,仅用于通过Fox ...

  4. Python程序的首行

    >问题 >>在一些python程序中的首行往往能够看见下面这两行语句中的一句 >>>#!/usr/bin/Python >>>#!/usr/bin ...

  5. 【转】Apache Digest验证

    Apache默认使用basic模块验证,都是明文传输,不太安全,所以本文使用Digest来验证,以提高安全性. 1.Apache配置: A.目录权限配置 Alias /nagios "/us ...

  6. CSS深入理解之overflow

    CSS深入理解之overflow 前言 这是跟着张鑫旭重学CSS的overflow篇 基本属性 overflow有以下五个基本属性: 1.visible : 默认值,具体表现为,应用此属性后,子元素超 ...

  7. 18.有一个网页地址, 比如PHP开发资源网主页: http://www.phpres.com/index.html,如何得到它的内容?

    方法1(对于PHP5及更高版本): $readcontents = fopen("http://www.phpres.com/index.html", "rb" ...

  8. JAVA内存管理之堆内存和栈内存

    我们常常做的是将Java内存区域简单的划分为两种:堆内存和栈内存.这种划分比较粗粒度,这种划分是着眼于我们最关注的.与对象内存分配密切相关的两类内存域.其中栈内存指的是虚拟机栈,堆内存指的是java堆 ...

  9. select/poll/epoll on serial port

    In this article, I will use three asynchronous conferencing--select, poll and epoll on serial port t ...

  10. Linux下常用yum命令

    linux各发行版有多种包管理机制,下面介绍基于RedHat系的yum包管理命令: yum -y install xxx                                     无需询 ...