Linux中Apache設置壓縮及緩存的方法實例

本文主要和大家分享linuxapache設置壓縮及緩存的方法實例,希望能幫助到大家。

壓縮文件:

編輯apache模塊

vim /etc/httpd/conf.modules.d/00-base.conf

確保以下三個模塊沒有被注釋

LoadModule headers_module modules/mod_headers.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule filter_module modules/mod_filter.so

注意:也可以把三個模塊放到/etc/httpd/conf/httpd.conf文件里,模塊只能在一個文件中加載

設置壓縮規則

vim /etc/httpd/conf/httpd.conf

末尾添加


AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
# Remove browser bugs (only needed for really old browsers)
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
#SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary #設置不對后綴gif,jpg,jpeg,png的圖片文件進行壓縮
Header append Vary User-Agent

壓縮率一般都大于70%

壓縮率檢測(http://tool.chinaz.com/Gzips/)只能在pc端檢測

設置緩存:

vim /etc/httpd/conf.modules.d/00-base.conf

確保以下模塊沒有被注釋

LoadModule headers_module modules/mod_headers.so #第一種緩存方式
LoadModule expires_module modules/mod_expires.so #第二種緩存方式

注意:也可以把這個模塊放到/etc/httpd/conf/httpd.conf文件里,模塊只能在一個文件中加載

設置緩存規則

vim /var/www/html/.htaccess

末尾添加

第一種緩存方式

FileEtag INode Mtime Size

第二種緩存方式

# 緩存有效時間 1 月

Header set Cache-Control “max-age=2592000, public”


Header set Cache-Control “max-age=2592000, public, must-revalidate”

注意:max-age為緩存時間,單位秒,按需修改

第三種緩存方式

vim /etc/httpd/conf/httpd.conf

添加以下內容


ExpiresActive On
#css文件緩存2592000/3600/24=1月
ExpiresByType text/css A2592000
#js文件緩存2592000/3600/24=1月
ExpiresByType application/x-javascript A2592000
ExpiresByType application/javascript A2592000
#html文件緩存2592000/3600/24=1月
ExpiresByType text/html A2592000
#圖片文件緩存2592000/3600/24=1月
ExpiresByType image/jpg A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/ico A2592000
ExpiresByType image/x-icon A2592000
#文件默認緩存1月
ExpiresDefault “access plus 30 days”

注意:以上方式,三選一

重啟apache服務

service httpd restart

注意:apache設置壓縮和緩存都會增加服務器的內存壓力,但設置壓縮和緩存之后,網站的訪問速度會有所提高

相關推薦:

Apache和PHP的配置詳細講解

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享