配置文件:(紅色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
編輯修改配置文件
編輯虛擬配置文件: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