1. 程式人生 > >訪問日誌不記錄靜態文件 訪問日誌切割 靜態元素過期時間

訪問日誌不記錄靜態文件 訪問日誌切割 靜態元素過期時間

訪問日誌不記錄靜態文件 訪問日誌切割

一、訪問日誌不記錄靜態文件
技術分享圖片
#vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //打開虛擬主機配置文件
在 CustomLog "logs/111.com-access_log" combined的上面插入
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/111.com-access_log" combined 後面添加 env=!img ,表示是img標記的都不記錄到日誌裏面去
#/usr/local/apache2.4/bin/apachectl -t
#/usr/local/apache2.4/bin/apachectl graceful
#curl -x127.0.0.1:80 111.com/dgfkdgk.jpg -I //訪問jpg的日誌不記錄
#curl -x127.0.0.1:80 111.com/dgfkdgk.jpg1 -I //訪問jpg1的日誌就有記錄
技術分享圖片
二、訪問日誌切割
技術分享圖片
#vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
CustomLog "|/usr/local/apache2.4/bin/rotatelogs -l logs/111.com-access_%Y%m%d.log 86400" combined env=!img
//rotatelogs工具是Apache自帶的一個日誌切割工具,-l是讓它以當前系統的時間為基準,如果不指定-l,它會以UTC格式的時間去切割日誌,日誌切割需要每天生成一個日誌,需要定義個變量%Y%m%d年月日,86400代表秒,1天=86400秒
技術分享圖片
#/usr/local/apache2.4/bin/apachectl -t
#/usr/local/apache2.4/bin/apachectl graceful //重新加載
#curl -x127.0.0.1:80 111.com/123.php //加載完以後可以訪問下123.php
#ls /usr/local/apache2.4/logs/ //查看它下面的日誌會自動生成一個以日期命名的文件,到淩晨0點的時候就會生成一個新的日誌,做完切割之後,還需要做一個任務計劃,刪除超過兩個月的日誌文件,這樣做的目的一是防止磁盤寫滿,二是每天有規律的生成一個日誌文件,方便我們查找
三、靜態元素過期時間
技術分享圖片
#vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //編輯配置文件
增加如下被框框起來的一段內容
技術分享圖片
#/usr/local/apache2.4/bin/apachectl -t
#/usr/local/apache2.4/bin/apachectl -M |grep expire //查看模塊有沒有
#vim /usr/local/apache2.4/conf/httpd.conf //編輯主配置文件
把#LoadModule expires_module modules/mod_expires.so這一行的註釋#去掉
#/usr/local/apache2.4/bin/apachectl -M |grep expire //再次查看模塊已加載
按Ctrl+F5可以清空瀏覽器的本地緩存
#curl -x127.0.0.1:80 111.com/qq.png -I //使用curl命令訪問qq.png圖片
若是將expire模塊去除,再去curl命令查看圖片,就無法看到Cache-Control參數
一般公司的網站都會設置過期時間

擴展
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

訪問日誌不記錄靜態文件 訪問日誌切割 靜態元素過期時間