访问日志不记录静态文件,访问日志切割,静态元素过时时间

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

配置文件:(红色img后缀的拷贝到服务器里面)css

<VirtualHost *:80>
    DocumentRoot "/data/wwwroot/www.123.com"
    ServerName www.123.com
    ServerAlias 123.com
    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
 
    CustomLog "logs/123.com-access_log" combined env=!img
</VirtualHost>apache

编辑虚拟配置文件:vim /usr/local/apache2.4/conf/extra/httpd-vhosts.confvim

从新加载配置文件 -t, graceful
 mkdir /data/wwwroot/www.123.com/images //建立目录,并在这目录下上传一个图片
 curl -x127.0.0.1:80 -I 123.com/images/123.jpg      = 访问端口
 tail /usr/local/apache2.4/logs/123.com-access_log    =查看日志浏览器

 

访问日志切割:

修改完配置文件后,须要从新访问下网址才能生动生成日志文件,之后每到00:00就会自动生成以系统日期为名字的新的日志文件
编辑虚拟配置文件:vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf缓存

修改完后从新加载配置文件后,浏览器从新登录网址 就自动生成以日期命名的日志文件了服务器

能够查看下它的内容记录curl

 

11.24 静态元素过时时间:

编辑修改配置文件
编辑虚拟配置文件:vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf测试

检查并从新加载配置文件后,再检查下这个模块有没有加载 expaire,这里是没有加载这个模块的
/usr/local/apache2.4/bin/apachectl -M |grep expire
编辑主配置文件:vim /usr/local/apache2.4/conf/httpd.conf
expire模块前的#号去掉网站

而后从新加载配置文件,就有了expire这个模块url

模块有了就测试一下
用浏览器测试,打开图片网页,按ctrl+f5是强制刷新并清空缓存内容,这时候的状态码是200,还有一项过时时间是86400秒Cache-Control:max-age=86400

而后再按f5刷新,这时候状态码就变304了,由于这个图片已下载了,在缓存里有了

用curl访问测试查看到的开始时间与结束时间恰好是24小时

 

这个配置通常公司的网站都会设置这个过时时间,这个设置仍是挺实用的
扩展 
apache日志记录代理IP以及真实客户端IP http://ask.apelearn.com/question/960
apache只记录指定URI的日志 http://ask.apelearn.com/question/981
apache日志记录客户端请求的域名 http://ask.apelearn.com/question/1037
apache 日志切割问题 http://ask.apelearn.com/question/566

相关文章
相关标签/搜索