apache開啟gzip壓縮
創新互聯公司致力于互聯網品牌建設與網絡營銷,包括成都網站設計、成都網站制作、SEO優化、網絡推廣、整站優化營銷策劃推廣、電子商務、移動互聯網營銷等。創新互聯公司為不同類型的客戶提供良好的互聯網應用定制及解決方案,創新互聯公司核心團隊十載專注互聯網開發,積累了豐富的網站經驗,為廣大企業客戶提供一站式企業網站建設服務,在網站建設行業內樹立了良好口碑。首先說下gzip配置的方法,在apache中gzip壓縮使用的是mod_deflate模塊,
以下是具體的配置方法和步驟:
步驟一:
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
打開http.conf后,先將上面兩行配置前面的#號去掉,這樣apache就會啟用這兩個模塊,其中mod_deflate是壓縮模塊,就是對要傳輸到客戶端的代碼進行gzip壓縮
mod_headers模塊的作用是告訴瀏覽器頁面使用了gzip壓縮,如果不開啟mod_headers那么瀏覽器就會對gzip壓縮過的頁面進行下載,而無法正常顯示
步驟二:
在httpd.conf中加入以下代碼,可以加到任何空白地方,不了解apache的朋友,如果擔心加錯地方,就放到http.conf文件的最后一行。
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE #必須的,就像一個開關一樣,告訴apache對傳輸到瀏覽器的內容進行壓縮
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary #設置不對后綴gif,jpg,jpeg,png的圖片文件進行壓縮
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary #同上,就是設置不對exe,tgz,gz。。。的文件進行壓縮
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 #這段代碼你只需要了解application/javascript application/x-javascript這段就可以了,這段的意思是對javascript文件進行壓縮
AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp #這段是告訴apache對php類型的文件進行壓縮
BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.x 有一些問題,所以只壓縮文件類型是text/html的
BrowserMatch ^Mozilla/4.0[678] no-gzip # Netscape 4.06-4.08 有更多的問題,所以不開啟壓縮
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html # IE瀏覽器會偽裝成 Netscape ,但是事實上它沒有問題
Header append Vary User-Agent env=!dont-vary #確保代理不會發送錯誤的內容
</IfModule>
本配置到這里apache中的gzip壓縮就配置完成,重啟apache后,新的配置就會生效。
配置http緩存mod_expires模塊
步驟一:
LoadModule expires_module modules/mod_expires.so
在httpd.conf中,找到上面的代碼,然后將前面的#去掉
步驟二:
在httpd.conf中加入以下代碼,可以加到任何空白地方,不了解apache的朋友,如果擔心加錯地方,就放到http.conf文件的最后一行。
<IfModule mod_expires.c>
ExpiresActive On #激活http緩存,也就是個開關,必須有的一段代碼
ExpiresDefault A604800 #默認緩存時間為604800秒,也就是7天,A表示以客戶端時間為準
ExpiresByType text/css A3600 #對css文件緩存3600秒,也就是1小時,A表示以客戶端時間為準
ExpiresByType text/html A3600 #對html文件緩存3600秒,也就是1小時,A表示以客戶端時間為準
ExpiresByType application/x-javascript A3600 #對javascript文件緩存3600秒,也就是1小時,A表示以客戶端時間為準
ExpiresByType p_w_picpath/gif "access plus 2 month" #對gif圖片緩存2個月,以客戶端時間為準 @ itxyz.net
ExpiresByType p_w_picpath/jpeg "access plus 2 month" #對jpeg和jpg圖片緩存2個月,以客戶端時間為準
ExpiresByType p_w_picpath/png "access plus 2 month" #對png圖片緩存2個月,以客戶端時間為準
ExpiresByType p_w_picpath/x-icon "access plus 2 month" #對瀏覽器小圖標緩存2個月,以客戶端時間為準
ExpiresByType application/x-shockwave-flash A2592000 #對flash文件緩存2592000秒,也就是1個月,A表示以客戶端時間為準
Header unset Pragma #刪除掉http頭信息中的Pragma,不懂的可以google一下Pragma,他也是控制瀏覽器緩存的,不過是用于http1.0標準
FileETag None
Header unset ETag #這段代碼和上面一段的作用是不使用http1.1標準中的ETag屬性
<FilesMatch "\.(js|css|ico|pdf|flv|jpg|jpeg|png|gif|mp3|mp4|swf)$"> #針對js|css|ico等后綴的文件進行單獨設置
#Header set Expires "Thu, 15 Apr 2013 20:00:00 GMT"
Header unset Last-Modified #不使用http頭信息中的Last-Modified屬性,Last-Modified是指文件最后修改時間
Header append Cache-Control "public" #設置為可被任何緩存區緩存
</FilesMatch>
</IfModule>
上面的配置是我自己的服務器上正在使用的配置方法,在這里與大家分享一下,代碼不會有錯,最后不要忘記重啟apache服務器哦
如果有apache高人有更好的配置,請指教一下!
如果用的虛擬主機,而虛擬主機支持.htaccess,則可以將上面的代碼放到.htaccess文件中。
特別提醒:
如果您把代碼復制到配置文件后,apache無法啟動,您就把后面所有的注釋刪除,重啟apache就ok啦。
另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
當前名稱:apache2.0x開啟gzip壓縮和http緩存的配置方法-創新互聯
轉載注明:http://vcdvsql.cn/article14/iesge.html
成都網站建設公司_創新互聯,為您提供Google、做網站、手機網站建設、網站維護、響應式網站、外貿網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯