2010-08-17 91 views
2

我試過用YSlow優化我的網站的路線。但是,即使我已將DEFLATE代碼添加到.htaccess以gzip文件,但YSlow仍不會將文件顯示爲gzip。我嘗試使用此測試我的網站:http://www.gidnetwork.com/tools/gzip-test.php,它顯示我的網頁是而不是 gzipped或壓縮。我還能如何將它們壓縮或壓縮?使用.htaccess優化網站

這是的.htaccess:

SetOutputFilter DEFLATE 
Header unset ETag 
FileETag None 

################ Expires Control ################ 
ExpiresActive On 
ExpiresDefault A0 
<FilesMatch "\.(gif|jpg|jpeg|png|swf)$"> 
# 2 weeks 
ExpiresDefault A1209600 
Header append Cache-Control "public" 
</FilesMatch> 
<FilesMatch "\.(xml|txt|html)$"> 
# 2 hours 
ExpiresDefault A7200 
Header append Cache-Control "proxy-revalidate" 
</FilesMatch> 
<FilesMatch "\.(js|css)$"> 
# 3 days 
ExpiresDefault A259200 
Header append Cache-Control "proxy-revalidate" 
</FilesMatch> 
從這個

除此之外,還有什麼能做些什麼來優化速度,並降低我的網頁的加載時間?

此外,每次刷新頁面時,頁面上的圖像都會一直加載。我如何緩存它以使其快速加載?

回答

2

你可以嘗試啓用 「mod_gzip的」

在你的.htaccess將這個

<ifModule mod_gzip.c> 
    mod_gzip_on Yes 
    mod_gzip_dechunk Yes 
    mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$ 
    mod_gzip_item_include mime ^text/.* 
    mod_gzip_item_include mime ^application/x-javascript.* 
    mod_gzip_item_exclude mime ^image/.* 
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* 
</ifModule> 
+0

我試過了,但它顯示我的文件沒有被壓縮。我不確定我還需要做些什麼才能將它們壓縮。 – input 2010-08-17 21:09:28

+0

可以肯定:你確定你已經改變了我提供的.htaccess規則嗎? (因爲這些只是示例規則) 我認爲您的虛擬主機可能已禁用mod_gzip安全一些cpu週期。 ;-) – Kwastie 2010-08-17 21:24:55

+0

如果我的虛擬主機禁用了mod_gzip,那麼我還能如何壓縮我的文件?任何其他的選擇? – input 2010-08-17 22:19:58

0

您好只要把下面的代碼htaccess的

<ifModule mod_gzip.c> 
    mod_gzip_on Yes 
    mod_gzip_dechunk Yes 
    mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$ 
    mod_gzip_item_include handler ^cgi-script$ 
    mod_gzip_item_include mime ^text/.* 
    mod_gzip_item_include mime ^application/x-javascript.* 
    mod_gzip_item_exclude mime ^image/.* 
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* 
</ifModule> 

<IfModule mod_expires.c> 
# Enable expirations 
ExpiresActive On 
# Default directive 
ExpiresDefault "access plus 1 month" 
# My favicon 
ExpiresByType image/x-icon "access plus 1 year" 
# Images 
ExpiresByType image/gif "access plus 1 month" 
ExpiresByType image/png "access plus 1 month" 
ExpiresByType image/jpg "access plus 1 month" 
ExpiresByType image/jpeg "access plus 1 month" 
# CSS 
ExpiresByType text/css "access plus 1 month" 
# Javascript 
ExpiresByType application/javascript "access plus 1 year" 
</IfModule> 

<IfModule mod_deflate.c> 
    # Compress HTML, CSS, JavaScript, Text, XML and fonts 
    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 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 
    Header append Vary User-Agent 
</IfModule> 

# BEGIN Cache-Control Headers 
<ifModule mod_headers.c> 
    <filesMatch ".(ico|jpe?g|png|gif|swf)$"> 
    Header set Cache-Control "public" 
    </filesMatch> 
    <filesMatch ".(css)$"> 
    Header set Cache-Control "public" 
    </filesMatch> 
    <filesMatch ".(js)$"> 
    Header set Cache-Control "private" 
    </filesMatch> 
    <filesMatch ".(x?html?|php)$"> 
    Header set Cache-Control "private, must-revalidate" 
    </filesMatch> 
</ifModule> 
# END Cache-Control Headers 

# BEGIN Turn ETags Off 
FileETag None 
# END Turn ETags Off