綠色資源網:您身邊最放(fàng)心的安全下載站! 最新軟件|熱門排行|軟件分類|軟件專題|廠商大全

綠色資源網

技術教程
您的位置:首頁服務器類Web服務器 → apache2.0x 開啟gzip壓縮和http緩存的配(pèi)置方法

apache2.0x 開啟gzip壓縮和http緩存的配置方法

我要評論 2011/04/14 10:37:03 來源:綠色資源(yuán)網 編輯:ynaad.com [ ] 評論:0 點擊:206次

先談gzip的配置方法,在apache2.0以上(包括(kuò)apache2.0)的版中gzip壓縮使用的是mod_deflate模塊,下麵是具體配置步驟:

第1步

LoadModule deflate_module modules/mod_deflate.so

LoadModule headers_module modules/mod_headers.so

打開httpd.conf後,先將上麵(miàn)兩行配置前麵的#號去掉,這樣apache就會(huì)啟用這兩個模塊,其中mod_deflate是壓(yā)縮模塊,就是對要傳輸(shū)到客戶端的代碼進行gzip壓縮;mod_headers模塊的作(zuò)用是(shì)告(gào)訴(sù)瀏覽器頁麵(miàn)使用了gzip壓縮,如果不開啟mod_headers那麽瀏覽器就(jiù)會對(duì)gzip壓縮過(guò)的頁麵進行下載,而無法正常顯示。

第2步(bù)

在httpd.conf中(zhōng)加(jiā)入以(yǐ)下代碼,可以加到任何(hé)空白地方,不了解apache的朋友,如果(guǒ)擔(dān)心加錯地(dì)方,就放到http.conf文件的最後一行(háng)。

<IfModule mod_deflate.c>
    SetOutputFilter DEFLATE    #必須的,就像一個開關一樣,告訴apache對傳輸到瀏覽器的內容進行壓縮

SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary #設置不對後綴gif,jpg,jpeg,png的圖(tú)片(piàn)文件進行壓縮
    SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary #同上,就是設置不對exe,tgz,gz。。。的文件進行壓(yā)縮
    SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary

AddOutputFilterByType DEFLATE text/* #設置對文件是文本的內容進行壓縮,例如text/html  text/css  text/plain等
    AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscript application/javascript application/x-javascript #這段代碼你隻需要了(le)解application/javascript application/x-javascript這段就可以了,這段的(de)意思是對javascript文件進行(háng)壓縮(suō)
    AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp #這段是告訴apache對php類型的文件進行壓縮

BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.x 有一(yī)些問題(tí),所以隻壓縮文件類型是text/html的
    BrowserMatch ^Mozilla/4.0[678] no-gzip # Netscape 4.06-4.08 有更多的問題(tí),所(suǒ)以(yǐ)不開啟壓縮
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html # IE瀏覽器會偽裝成 Netscape ,但是(shì)事實上它沒有問題

Header append Vary User-Agent env=!dont-vary #確保代理不會發送錯誤的(de)內容
</IfModule>

本配置到這裏apache中的gzip壓縮就配置完成,重啟apache後(hòu),新的配置就會生效,當(dāng)然這裏我們還不會重啟apache因為下一步要(yào)配置http緩存,也(yě)就是mod_expires模(mó)塊。

第1步

LoadModule expires_module modules/mod_expires.so

在httpd.conf中,找到上麵的代碼,然後將前麵的#去掉

第2步

在httpd.conf中加入以下代(dài)碼,可以加到(dào)任何空(kōng)白地方,不了解apache的(de)朋友,如果擔心加錯地方,就放到http.conf文件的最後一行。

<IfModule mod_expires.c>
    ExpiresActive On #激活http緩存,也就是個開關,必須有的一段代碼
    ExpiresDefault A604800 #默認緩存時間為604800秒,也就是(shì)7天,A表(biǎo)示(shì)以客戶端(duān)時間為準
    ExpiresByType text/css A3600 #對css文件緩存3600秒,也就是1小時,A表(biǎo)示以客戶(hù)端(duān)時間為準
    ExpiresByType text/html A3600 #對html文件(jiàn)緩存3600秒,也就是1小時,A表示以客戶端時(shí)間(jiān)為準
    ExpiresByType application/x-javascript A3600 #對javascript文件緩存3600秒,也就是(shì)1小時,A表示(shì)以客戶端時間為準
    ExpiresByType image/gif "access plus 2 month" #對gif圖片緩存(cún)2個月,以客戶端時間為準
    ExpiresByType image/jpeg "access plus 2 month" #對jpeg和jpg圖片緩存2個月,以客戶端時間為準(zhǔn)
    ExpiresByType image/png "access plus 2 month" #對png圖片緩存2個月,以客(kè)戶端(duān)時(shí)間為準
    ExpiresByType image/x-icon "access plus 2 month" #對瀏覽(lǎn)器小(xiǎo)圖標緩存2個月,以客戶端(duān)時間為準
    ExpiresByType application/x-shockwave-flash A2592000 #對flash文件緩存2592000秒,也就是1個月,A表示以客戶(hù)端時間為準

#特別注意也可以使用 ExpiresByType text/css M3600  這裏的M表示以文件最後修改時間為準緩存1小時,例如有些時候,我們的(de)HTML是(shì)大批量定時更新的(de),這(zhè)個時候就可以用到M

Header unset Pragma #刪除掉http頭信息中的Pragma,不懂的可以google一下Pragma,他也是控製瀏覽器(qì)緩存的,不過是(shì)用於http1.0標準
  FileETag None
  Header unset ETag #這段代(dài)碼和上麵一段的作用是(shì)不使用http1.1標(biāo)準中的ETag屬性
  <FilesMatch "\.(js|css|ico|pdf|flv|jpg|jpeg|png|gif|mp3|mp4|swf)$"> #針對js|css|ico等後(hòu)綴的(de)文件進行單(dān)獨設置(zhì)
  #Header set Expires "Thu, 15 Apr 2013 20:00:00 GMT"
  Header unset Last-Modified #不(bú)使(shǐ)用http頭信息中的Last-Modified屬(shǔ)性,Last-Modified是指文件最後修改時間
  Header append Cache-Control "public" #設置為可被任何緩存區緩存
  </FilesMatch>
</IfModule>

上麵(miàn)的配置(zhì)是(shì)我(wǒ)自己的服務器(qì)上正在使用的配置方法,在這裏與大家分享一下,代碼不會有錯,最後不要忘記重啟apache服務器哦!

如果有apache高人有更(gèng)好的(de)配置,請指教一下!

如果用的虛擬主機,而虛擬主機支持.htaccess,則可以將上麵的代碼放到.htaccess文件中。

關鍵詞:apache,gzip壓縮,http緩存

閱(yuè)讀本文後您有什(shí)麽感想? 已有 人給出評價!

  • 0 歡迎(yíng)喜歡
  • 0 白癡
  • 0 拜(bài)托(tuō)
  • 0 哇
  • 0 加油
  • 0 鄙視
免费人欧美成又黄又爽的视频丨一本色道久久88综合日韩精品丨国产专区日韩精品欧美色丨午夜无遮挡男女啪啪视频丨国产欧美日韩综合精品一区二区丨亚洲精品无码不卡在线播HE丨亚洲精品国产精品国自产观看丨日韩国产高清av不卡