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

11.22 訪問日誌不記錄靜態文件

網站大多元素爲靜態文件,如圖片、css、js等,這些元素能夠不用記錄 把虛擬主機配置文件改爲以下:javascript

<VirtualHost *:80>
    DocumentRoot "/data/wwwroot/www.110.com";
    ServerName www.110.com
    ServerAlias 110.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
    SetEnvIf Request_URI ".*\.gif$" img
    CustomLog "logs/110.com-access_log" combined env=!img
</VirtualHost>

從新加載配置文件 -t, graceful mkdir /data/wwwroot/www.110.com/images //建立目錄,並在這目錄下上傳一個圖片css

curl -x127.0.0.1:80 -I 110.com/images/123.jpgjava

tail /usr/local/apache2.4/logs/110.com-access_logapache

11.23 訪問日誌切割

日誌一直記錄總有一天會把整個磁盤佔滿,因此有必要讓它自動切割,並刪除老的日誌文件瀏覽器

把虛擬主機配置文件改爲以下:緩存

<VirtualHost *:80>
    DocumentRoot "/data/wwwroot/www.110.com";
    ServerName www.110.com
    ServerAlias 110.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 "|/usr/local/apache2.4/bin/rotatelogs -l logs/110.com-access_%Y%m%d.log 86400" combined env=!img
</VirtualHost>

-l 以系統時間來切割, 不加以utc時間來切割 86400 爲1天app

從新加載配置文件 -t, gracefulcurl

ls /usr/local/apache2.4/logs測試

還要作一個任務計劃, 把超過n個月的日誌定時刪除網站

11.24 靜態元素過時時間

瀏覽器訪問網站的圖片時會把靜態的文件緩存在本地電腦裏,這樣下次再訪問時就不用去遠程下載了 增長配置

<IfModule mod_expires.c>
    #打開該功能的開關
    ExpiresActive on 
    ExpiresByType image/gif  "access plus 1 days"
    ExpiresByType image/jpg "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"
</IfModule>

須要expires_module

/usr/local/apache2.4/bin/apachectl -M|grep -i expires //若無該模塊,須要編輯配置文件httpd.conf,刪除expires_module 前面的#

curl測試,看cache-control: max-age

curl -x127.0.0.1:80 www.110.com/images/123.gif -I

相關文章
相關標籤/搜索