Select Page

確認 Nginx 版本

安裝 Brotli 模組

有安裝的可以跳過這一步驟,但多數 nginx 是預設沒有安裝 brotli 模組的,下載 brotli 並且安裝

cd /path/to/nginx/source
./configure --add-module=/path/to/ngx_brotli
make
sudo make install

配置 Nginx 啟用 Brotli 壓縮

找到 nginx 的設定檔,通常位於 /etc/nginx/nginx.conf ,如果是自己編譯的通常位於 /usr/local/nginx/conf/nginx.conf

brotli on;
brotli_comp_level 6;
brotli_static on;
brotli_types text/plain text/css application/javascript application/json text/xml application/xml application/xml+rss text/javascript image/x-icon image/svg+xml;

brotli on;:啟用 Brotli 壓縮。

brotli_comp_level 6;:設定壓縮等級,範圍為 0(無壓縮)到 11(最高壓縮),建議值為 6。

brotli_static on;:允許查找預先壓縮的 .br 檔案。

brotli_types ...;:指定需要壓縮的 MIME 類型,可根據實際需求進行調整。

測試並重新載入 Nginx

sudo nginx -t
sudo systemctl reload nginx

驗證 Brotli 壓縮是否啟用

curl -I -H "Accept-Encoding: br" https://您的域名

如果回應頭中包含 Content-Encoding: br,則表示 Brotli 壓縮已成功啟用。

Brotli 壓縮的關鍵特性

高壓縮率

  • Brotli 使用自適應哈夫曼編碼和自定義字典來提高壓縮率,比 Gzip 通常高出 15% 至 25%。
  • 更高的壓縮率可以減少網頁資源的大小,從而提升網站的載入速度。

快速解壓

  • 雖然 Brotli 的壓縮過程稍慢,但解壓速度非常快,這對於瀏覽器端非常重要,因為解壓過程是即時進行的。

支援範圍廣泛

  • Brotli 已被主流的現代瀏覽器(如 Chrome、Firefox、Edge 和 Safari)支援,並且可與 Web 伺服器(如 Nginx 和 Apache)整合。

適合靜態和動態內容

  • Brotli 特別適合靜態資源(如圖片和腳本)壓縮,對動態生成的內容同樣表現出色。

Brotli 與 Gzip 的比較表

特性BrotliGzip
壓縮率高,壓縮比更優一般
解壓速度
壓縮速度較慢(高壓縮等級下)更快
支援的瀏覽器現代瀏覽器全部支援幾乎所有瀏覽器支援
靜態檔案優化優異一般

相關資源