Apache-2.2

如何通過 .htaccess 啟用 Gzip 或 Deflate 壓縮?

  • November 6, 2014

如何通過 .htaccess 啟用 Gzip 或 Deflate 壓縮,現在哪一個最好?需要程式碼範例。

HTML5 Boilerplate ( http://html5boilerplate.com ) 提供了似乎是最好和最有效的解決方案設置以及許多其他設置,如記憶體、mime 類型等。強烈推薦。

<IfModule mod_deflate.c>

# Force compression for mangled headers.
# http://developer.yahoo.com/blogs/ydn/posts/2010/12/pushing-beyond-gzipping
<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding
RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
</IfModule>
</IfModule>


# Compress all output labeled with one of the following MIME-types
# (for Apache versions below 2.3.7, you don't need to enable `mod_filter`
#  and can remove the `<IfModule mod_filter.c>` and `</IfModule>` lines
#  as `AddOutputFilterByType` is still in the core directives).

<IfModule mod_filter.c>
AddOutputFilterByType DEFLATE application/atom+xml \
application/javascript \
application/json \
application/rss+xml \
application/vnd.ms-fontobject \
application/x-font-ttf \
application/x-web-app-manifest+json \
application/xhtml+xml \
application/xml \
font/opentype \
image/svg+xml \
image/x-icon \
text/css \
text/html \
text/plain \
text/x-component \
text/xml
</IfModule>

</IfModule>

編輯:由於這個問題和答案在幾年後不斷得到支持,我將 H5BP 伺服器配置連結放在更完整的優化上。

編輯:固定連結到https://github.com/h5bp/server-configs-apache

引用自:https://serverfault.com/questions/137823