apache2.4配置访问日志分割并过滤图片CSS等无用内容
相关信息
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等无用内容的更多相关文章
- tomcat配置访问日志,访问首页主目录
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" ...
- 配置tomcat日志分割
由于Tomcat在默认情况下会将没有经过配置的web应用所产生的日志输出已及其本身的日志内容都输出到这个文件中,那么随着时间的推移,这个文件的尺寸将会越来越大,当需要检查日志内容时间会导致文件难以打开 ...
- linux环境下安装tomcat并配置tomcat日志分割
1.直接解压apache-tomcat-7.0.69.tar.gz 存放在/home目录下 根据需要自定义tomcat名称 mv apache-tomcat-7.0.69 Tomcat7 2.解压cr ...
- apache 访问日志access_log 配置和解析 rotatelogs分割日志
一.解析访问日志 apache 的访问日志记载着大量的信息,学会高效快捷的读出其中关键信息对我们的工作有极大帮助. 如果Apache的安装方式是默认安装,服务器一运行就会有两 ...
- Tomcat访问日志详细配置
在server.xml里的<host>标签下加上 <Valve className="org.apache.catalina.valves.AccessLogValve&q ...
- Nginx 笔记与总结(4)配置 server 访问日志
打开 nginx.conf: [root@localhost ~]# cd /usr/local/nginx/conf [root@localhost conf]# vim nginx.conf 在默 ...
- Tomcat访问日志详细配置(转)
在server.xml里的<host>标签下加上<Valve className="org.apache.catalina.valves.AccessLogValve&qu ...
- 转 Tomcat访问日志详细配置
配置http访问日志.Tomcat自带的能够记录的http访问日志已经很详细了取消下面这段的注释: <Valve className="org.apache.catalina.valv ...
- Nginx 访问日志
配置访问日志: [root@localhost ~]$ cat /usr/local/nginx/conf/nginx.conf http { log_format main '$remote_add ...
随机推荐
- 兼容iOS 10 资料整理笔记
原文链接:http://www.jianshu.com/p/0cc7aad638d9 1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化 ...
- new一个JAVA对象的时候,内存是怎么分配的?
new 对象的时候 在内存中 建立一个 内存区域 就是堆内存 用来存放对象的属性,当new完对象把对象的地址赋给对象的引用变量 这个时候 又在内存中建立一个区域 叫栈内存 用来存储 引用变量 引用变量 ...
- Android NDK常见配置问题的解决方案
添加NDK包时出现"Not a valid NDK directory" 在解压的android-ndk-rxxx文件夹中新建一个txt文件,将名字包括后缀更改为ndk-build ...
- Android Handler机制
http://blog.csdn.net/erliangcode/article/details/52117831
- test for cvx library in matlab - windows
Download the zip file of cvx http://cvxr.com/cvx/download/ by downloading cvx-w64.zip Require a lice ...
- Android下Cocos2d创建HelloWorld工程
最近在搭建Cocos2d的环境,结果各种问题,两人弄了一天才能搞好一个环境-! -_-!! 避免大家也可能会遇到我这种情况,所以写一个随笔,让大家也了解下如何搭建吧- 1.环境安装准备 下载 tadp ...
- 如何删除NSDictionary或NSArray中的NSNull
前段时间与某公司的技术交流,被问到一个问题,如何删除NSDictionary中的NSNull.当时在纸上写,以前太依赖Xcode编译器了,以至于方法名都写不全,最终也没写出来,我想我肯定被鄙视的体无完 ...
- sourceTreee设置忽略的文件
1.忽略不想要的目录,比如bin.obj目录(每次运行本机程序都会变化) 这个在右上角的Settings的Advanced下面的Repository-specific ignore list,点击Ed ...
- 模拟jQuery简单封装ajax
/*模拟jQuery的写法 (简单写法)*/ var $={}; /*ajax*/ $.ajax = function (options) { /* * 请求 * 1.请求接口 type get po ...
- Ubuntu16.04 802.1x 有线连接 输入账号密码,为什么连接不上?
ubuntu16.04,在网络配置下找到802.1x安全性,输入账号密码,为什么连接不上? 这是系统的一个bug解决办法:假设你有一定的ubuntu基础,首先你先建立好一个不能用的协议,就是按照之 ...