博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LAMP架构(Apache访问日志不记录静态文件、访问日志切割、静态元素过期时间)...
阅读量:5948 次
发布时间:2019-06-19

本文共 1952 字,大约阅读时间需要 6 分钟。

  hot3.png

Apache访问日志不记录静态文件

即在虚拟主机处配置访问特定资源不产生日志过滤,具体实例即网站不需要记录访问静态资源的日志,记录关键重要信息即可

编辑虚拟主机配置文件,添加如下配置。

SetEnvIf Request_URI ".*\.gif$" img    SetEnvIf Request_URI ".*\.jpg$" img    SetEnvIf Request_URI ".*\.png$" img    SetEnvIf Request_URI ".*\.bmp$" img    SetEnvIf Request_URI ".*\.swf$" img    SetEnvIf Request_URI ".*\.js$" img    SetEnvIf Request_URI ".*\.css$" img

curl测试未过滤时的效果,可以看到相关请求已记录

我们graceful虚拟主机配置文件,再次访问查看结果:

/usr/local/apache2.4/bin/apachectl  graceful

通过对比时间和文件,发现重新请求的jpg资源已经不记录在日志里了

访问日志切割

作用:方便管理,查看。节省磁盘空间

修改文件参数如下:

CustomLog "|/usr/local/apache2.4/bin/rotatelogs -l logs/111.com-access_%Y%m%d.log 86400" combined env=!img

我们graceful虚拟主机配置文件,查看apache日志目录:

/usr/local/apache2.4/bin/apachectl  graceful
  • 测试
curl -x127.0.0.1:80  111.com  -I
  • 此时日志已产生

  • 建议定期删除旧的文件

Apache配置静态元素过期时间

浏览器访问网站的图片时会把静态的文件缓存在本地电脑里,这样下次再访问时就不用去远程下载了。定义静态元素过期时间的目的是定义清理掉缓存,节省空间。

  • 编辑虚拟机配置文件,添加如下字段
//  编辑配置文件 vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf//  添加关键配置
ExpiresActive on //打开该功能的开关 ExpiresByType image/gif "access plus 1 days" ExpiresByType image/jpeg "access plus 24 hours" ExpiresByType image/png "access plus 24 hours" ExpiresByType text/css "now plus 2 hour" ExpiresByType application/x-javascript "now plus 2 hours" ExpiresByType application/javascript "now plus 2 hours" ExpiresByType application/x-shockwave-flash "now plus 2 hours" ExpiresDefault "now plus 0 min"

  • 检查expaire模块是否加载
/usr/local/apache2.4/bin/apachectl -M |grep expires
  • 编辑主配置文件开启此模块
//   编辑主配置文件vim  /usr/local/apache2.4/conf/httpd.conf
  • 开启此模块的配置

  • graceful虚拟主机配置文件
/usr/local/apache2.4/bin/apachectl  graceful
  • 上传jpg图片文件到111.com目录下
[root@yolks2 conf]# ls /data/wwwroot/111.com/111.jpg /data/wwwroot/111.com/111.jpg
  • 最后curl测试
curl -x127.0.0.1:80  111.com/qq.png  -I

或者可以301访问

curl -x127.0.0.1:80 www.example.com/111.jpg -I

拓展

apache日志记录代理IP以及真实客户端IP

apache只记录指定URI的日志
apache日志记录客户端请求的域名
apache 日志切割问题

转载于:https://my.oschina.net/yolks/blog/1922689

你可能感兴趣的文章
Sprite和UI Image的区别
查看>>
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql/mysql.sock' (2)
查看>>
python练习笔记——丑数的计算
查看>>
OpenCV + python 实现人脸检测(基于照片和视频进行检测)
查看>>
XSS 前端防火墙 —— 天衣无缝的防护
查看>>
Node.js umei图片批量下载Node.js爬虫1.00
查看>>
客户端拖动控件封装(让拖动变得更简单)
查看>>
linux下IPTABLES配置详解
查看>>
Sharepoint学习笔记—习题系列--70-576习题解析 -(Q131-Q134)
查看>>
iOS边练边学--iOS中的(ARC下)单粒模式(GCD实现)
查看>>
php get_magic_quotes_gpc()函数用法介绍
查看>>
SQL to Java code for Elasticsearch
查看>>
Java RMI之HelloWorld程序以及相关的安全管理器的知识
查看>>
FlatBuffers
查看>>
美团HD(5)-选择城市
查看>>
$.when()方法监控ajax请求获取到的数据与普通ajax请求回调获取到的数据的不同
查看>>
pthread_mutex_t
查看>>
LR11.0 下载及破解
查看>>
Java基础-绘图技术
查看>>
又转出61.8万个ETH,EOS不疯狂不成魔
查看>>