目錄
什麼是Brotli壓縮?
在服務器上安裝和配置Brotli
Brotli設置
測試Brotli支持
配置Brotli以與WordPress配合使用
在WordPress上進行Brotli性能測試
Brotli支持現狀
Brotli的優缺點
優點
缺點
總結
關於WordPress Brotli壓縮的常見問題解答(FAQ)
Brotli和Gzip壓縮有什麼區別?
Brotli壓縮如何提高網站性能?
所有瀏覽器都支持Brotli壓縮嗎?
如何測試我的網站是否正在使用Brotli壓縮?
我可以在我的WordPress網站上使用Brotli壓縮嗎?
使用Brotli壓縮的潛在缺點是什麼?
Brotli壓縮是如何工作的?
Brotli壓縮會影響我的網站SEO嗎?
Brotli壓縮適用於所有類型的網站嗎?
如何在我的服務器上實現Brotli壓縮?
首頁 CMS教程 &#&按 測量Brotli壓縮對WordPress的影響

測量Brotli壓縮對WordPress的影響

Feb 10, 2025 am 08:38 AM

Brotli壓縮:提升WordPress網站性能的利器

核心要點:

  • Google推出的新型壓縮算法Brotli能顯著提升WordPress網站性能,方法是減小文件大小,加快加載速度。
  • 在服務器上安裝和配置Brotli可能比較複雜,因為它尚未在流行的Web服務器上正式發布,需要手動配置才能與WordPress完全集成。
  • Brotli的壓縮率比另一種現代壓縮算法Gzip高出20-26%,從而產生更小的文件和更快的加載速度。
  • 儘管Brotli有很多優點,但並非所有瀏覽器都支持它,而且只能在HTTPS上使用,這可能會給一些用戶帶來採用上的挑戰。

WordPress憑藉易用性、強大的社區支持和可配置性等諸多優勢成為優秀的CMS。然而,WordPress用戶經常面臨的一個難題是網站性能問題。本文將探討Brotli壓縮及其對WordPress性能的影響。

免責聲明:我為KeyCDN工作,此處引用了他們的一些文章和工具。

網上有很多關於“加速WordPress”的文章,它們提供了許多改進網站加載速度的方法,包括使用插件進行優化。然而,自從Google發布了最新的壓縮算法Brotli以來,收集到的數據還不足以確定在WordPress網站上啟用它會帶來什麼樣的性能提升。

在本文中,我們將通過在三種不同場景下測試WordPress性能來衡量Brotli壓縮的效果:

  1. 啟用Gzip的WordPress
  2. 啟用Brotli的WordPress
  3. 啟用Brotli 支持Brotli的CDN的WordPress

什麼是Brotli壓縮?

Brotli(以一種瑞士烘焙產品命名)是Google在2015年發布的一種相對較新的壓縮算法。根據Google的說法,Brotli壓縮結合使用了現代LZ77算法變體、霍夫曼編碼和二階上下文建模。

Google使用Brotli壓縮算法進行了各種測試,並將結果與其他現代壓縮算法進行了對比。根據這項研究,Google發現Brotli在壓縮率方面平均比Zopfli(另一種現代壓縮算法)高出20-26%。在性能方面,文件壓縮得越小總是受歡迎的。

在服務器上安裝和配置Brotli

Brotli的一個小缺點是它尚未在任何流行的Web服務器上正式發布。這意味著,如果您今天想在服務器上啟用Brotli,則需要進行一些配置工作。以下Brotli性能測試均在運行Nginx的Ubuntu 16.04.2 LTS上進行(需要了解如何使用Nginx?請查看SitePoint高級課程《使用Nginx加速網站》)。下面,我們將逐步介紹如何在相同的操作系統和Web服務器上運行Brotli。

Ubuntu 16.04是第一個允許您使用apt-get安裝Brotli的Ubuntu發行版。為此,只需運行:

$ apt-get update && apt install brotli
登入後複製
登入後複製

完成後,您需要為Brotli壓縮安裝Nginx模塊並編譯最新版本的Nginx(當前版本為1.13.0):

$ apt-get update && apt install brotli
登入後複製
登入後複製

Brotli現在應該已正確安裝在您的服務器上。接下來,您需要配置nginx.conf文件以指定所需的配置指令。以下指令用於這些性能測試;但是,您可以根據需要修改它們。

Brotli設置

$ git clone --recursive https://github.com/google/ngx_brotli ngx_brotli

$ wget http://nginx.org/download/nginx-1.13.0.tar.gz
$ tar zxvf nginx-1.13.0.tar.gz
$ cd nginx-1.13.0

$ ./configure --add-module=../ngx_brotli
$ make && make install
登入後複製

完整的指令列表可以在Nginx模塊Github頁面上找到。

由於修改了nginx.conf文件,因此最後一步是重新加載Nginx。為此,請運行以下命令:

brotli on;
brotli_comp_level 3;
brotli_types text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript;
登入後複製

測試Brotli支持

Brotli現在應該已安裝並配置在您的服務器上。要驗證這一點,您可以選擇兩種方法。

  1. 使用Brotli測試工具,該工具將根據域名檢查服務器是否支持Brotli。 Measuring the Effects of Brotli Compression on WordPress
  2. 使用Chrome瀏覽器,打開Chrome開發者工具並導航到“網絡”選項卡。刷新頁面並選擇一個資源。您應該會看到content-encoding的值現在為br,代表Brotli。 Measuring the Effects of Brotli Compression on WordPress

配置Brotli以與WordPress配合使用

此時,您應該能夠使用Brotli壓縮正確地交付WordPress資源。但是,如果您檢查HTML文檔的請求標頭詳細信息,您可能會注意到content-encoding值仍然為“Gzip”。這是由於WordPress PHP代碼依賴於PHP設置zlib.output_compression“On”。

不幸的是,目前無法使用WP過濾器更改此設置。但是,隨著Brotli的普及,WordPress可能會引入簡單的修復程序。目前,您需要手動禁用zlib.output_compression,方法是編輯php.ini文件(如果使用PHP 7.0,則位於/etc/php/7.0/fpm/php.ini)。只需將zlib.output_compression設置為Off,然後使用systemctl restart php7.0-fpm.service重新啟動PHP。

現在,在檢查網站的HTML文檔時,您應該能夠看到content-encoding標頭值br。

Measuring the Effects of Brotli Compression on WordPress

在WordPress上進行Brotli性能測試

如上所述,我們的Brotli性能測試是在三種不同的場景下進行的。

  1. 啟用Gzip的WordPress
  2. 啟用Brotli的WordPress
  3. 啟用Brotli 支持Brotli的CDN的WordPress

Brotli和Gzip壓縮級別均設置為“3”。可以根據您喜歡的文件節省量與壓縮時間來修改壓縮級別。每個測試都使用運行“2017”主題的普通WordPress安裝。默認情況下,此主題加載14個資源並傳輸236KB的數據。

需要注意的是,上述測試網站中的並非所有資源都是可壓縮的。例如,圖像既不會被Gzip壓縮,也不會被Brotli壓縮,任何第三方資源(如字體)也不會被Brotli壓縮。因此,使用Gzip的所有壓縮資源的總大小的基線為84.7KB。為了考慮加載時間的變化,我們對每個頁面都進行了三次硬刷新,併計算了每個測試場景的平均加載時間。這樣,所有資源都將從服務器加載,而不是從瀏覽器緩存加載。

下表概述了加載速度和壓縮資源大小的結果。

WordPress Gzip WordPress Brotli WordPress Brotli CDN
加载速度 780 ms 690 ms 630 ms
压缩大小 84.7 KB 81.7 KB 81.7 KB

正如結果所示,兩種Brotli壓縮方法的加載時間都比Gzip快,壓縮大小也更小。儘管頁面大小的差異並不顯著,但請記住,這些測試是在裸機WordPress安裝上進行的。對於那些擁有許多資源的網站,多個資源上的少量節省肯定會累積起來。

此外,出於測試目的,我們將兩種壓縮方法都設置為最高級別,以觀察可壓縮資源大小的差異。結果如下:

  • Brotli 11 – 壓縮大小:67.7 KB
  • Gzip 9 – 壓縮大小:76.7 KB

儘管在這兩種情況下,將壓縮級別設置為最大可能並非必要(因為壓縮時間長得多),但值得注意的是,Brotli網站的可壓縮資源大小比Gzip網站的可壓縮資源大小小13.2%。

Brotli支持現狀

Brotli並非所有瀏覽器都普遍支持,儘管許多流行的瀏覽器目前都支持它(截至2017年5月)。

Measuring the Effects of Brotli Compression on WordPress https://www.php.cn/link/fc5f86251458722c799d1830fa0c2c1f

至於服務器支持,大多數流行的Web服務器都提供官方或社區創建的模塊。如本文的安裝過程所示,Nginx用戶必須安裝擴展程序並使用Brotli支持編譯Nginx。同樣,Apache用戶可以使用mod_brotli模塊來交付Brotli壓縮的內容。

Brotli的優缺點

和任何事物一樣,使用Brotli也有其優缺點。以下是一些需要考慮的幾點。

優點

  • 更小的壓縮結果
  • 更快的加載時間
  • 與Gzip相比,壓縮時間相當

缺點

  • 目前採用起來有點麻煩
  • 並非所有瀏覽器都支持
  • 需要手動配置才能與WordPress完全集成

此外,Brotli只能在HTTPS上使用,這既可以看作是優點,也可以看作是缺點。一方面,它正在幫助更多網站從HTTP遷移到HTTPS,從而創建一個更安全的互聯網。另一方面,它為那些想要啟用Brotli但仍在使用HTTP的用戶帶來了更多工作。

總結

如測試結果所示,在WordPress網站上實現Brotli在性能方面非常有益。在源服務器上實現Brotli允許在服務器端進行壓縮,然後在支持Brotli壓縮的CDN上緩存該內容,從而實現更快的資源交付。

儘管Brotli尚未被所有瀏覽器普遍支持,但重要的是要識別訪問者最常使用的瀏覽器,並通過提供更快的加載時間來滿足他們的需求。此外,對於那些使用尚未支持的瀏覽器的用戶,這些瀏覽器只會回退到使用Gzip——雙贏的局面。

關於WordPress Brotli壓縮的常見問題解答(FAQ)

Brotli和Gzip壓縮有什麼區別?

Brotli和Gzip都是用於壓縮數據的算法,但它們有一些關鍵區別。由Google開發的Brotli是一種較新的算法,它比Gzip提供更好的壓縮率。這意味著它可以使文件更小,這可以加快網站的加載速度。但是,Brotli不像Gzip那樣得到廣泛支持,因此它可能無法在所有瀏覽器或服務器上運行。

Brotli壓縮如何提高網站性能?

Brotli壓縮通過減小構成網站的文件的大小來工作。這意味著當用戶訪問您的網站時,他們的瀏覽器需要下載的數據更少,這可以加快加載速度。更快的加載速度可以改善用戶體驗,並對網站的SEO產生積極影響。

所有瀏覽器都支持Brotli壓縮嗎?

雖然包括Google Chrome和Firefox在內的許多現代瀏覽器都支持Brotli壓縮,但並非所有瀏覽器都支持它。例如,Internet Explorer不支持Brotli壓縮。因此,在決定是否使用Brotli壓縮時,務必考慮您的受眾及其可能的瀏覽器使用情況。

如何測試我的網站是否正在使用Brotli壓縮?

有幾種可用的在線工具可以測試您的網站是否正在使用Brotli壓縮。這些工具通過向您的網站發送請求,然後分析響應以查看它是否已使用Brotli進行壓縮來工作。

我可以在我的WordPress網站上使用Brotli壓縮嗎?

是的,您可以在您的WordPress網站上使用Brotli壓縮。但是,實現Brotli壓縮可能比其他類型的壓縮更複雜,因為它需要修改服務器配置。還有一些插件可以幫助您在WordPress網站上實現Brotli壓縮。

使用Brotli壓縮的潛在缺點是什麼?

雖然Brotli壓縮可以提高加載時間,但它並非沒有潛在的缺點。首先,它不像其他壓縮方法(如Gzip)那樣得到廣泛支持。這意味著它可能無法在所有瀏覽器或服務器上運行。此外,Brotli壓縮可能比其他方法更消耗資源,這可能會減慢服務器速度。

Brotli壓縮是如何工作的?

Brotli壓縮通過查找並刪除數據中的冗餘來工作。它使用常用單詞和短語的字典來將重複數據替換為更短的表示形式,從而減小數據的整體大小。

Brotli壓縮會影響我的網站SEO嗎?

是的,Brotli壓縮可能會對您的網站SEO產生積極影響。這是因為搜索引擎在對網站進行排名時考慮的因素之一是加載時間。通過減小網站文件的大小,從而提高加載速度,Brotli壓縮可以幫助提高網站的SEO。

Brotli壓縮適用於所有類型的網站嗎?

Brotli壓縮可以使許多類型的網站受益,特別是那些擁有大量文本數據(如博客或新聞網站)的網站。但是,對於包含大量多媒體內容的網站,它可能不太有益,因為此類內容通常已經過壓縮,並且使用Brotli可能不會看到顯著的尺寸減小。

如何在我的服務器上實現Brotli壓縮?

在服務器上實現Brotli壓縮通常需要修改服務器的配置文件以啟用Brotli壓縮並指定應壓縮的文件類型。確切的過程可能因服務器的操作系統和您使用的Web服務器軟件而異。

以上是測量Brotli壓縮對WordPress的影響的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1666
14
CakePHP 教程
1426
52
Laravel 教程
1328
25
PHP教程
1273
29
C# 教程
1254
24
如何在 WordPress 中獲取登錄用戶信息以獲得個性化結果 如何在 WordPress 中獲取登錄用戶信息以獲得個性化結果 Apr 19, 2025 pm 11:57 PM

最近,我們向您展示瞭如何通過允許用戶將自己喜歡的帖子保存在個性化庫中來為用戶創建個性化體驗。您可以通過在某些地方(即歡迎屏幕)使用他們的名字,將個性化結果提升到另一個水平。幸運的是,WordPress使獲取登錄用戶的信息變得非常容易。在本文中,我們將向您展示如何檢索與當前登錄用戶相關的信息。我們將利用get_currentuserinfo(); 功能。這可以在主題中的任何地方使用(頁眉、頁腳、側邊欄、頁面模板等)。為了使其工作,用戶必須登錄。因此我們需要使用

wordpress文章列表怎麼調 wordpress文章列表怎麼調 Apr 20, 2025 am 10:48 AM

有四種方法可以調整 WordPress 文章列表:使用主題選項、使用插件(如 Post Types Order、WP Post List、Boxy Stuff)、使用代碼(在 functions.php 文件中添加設置)或直接修改 WordPress 數據庫。

如何開始WordPress博客:初學者的分步指南 如何開始WordPress博客:初學者的分步指南 Apr 17, 2025 am 08:25 AM

博客是人們在網上表達觀點、意見和見解的理想平台。許多新手渴望建立自己的網站,卻因擔心技術障礙或成本問題而猶豫不決。然而,隨著平台不斷發展以滿足初學者的能力和需求,現在開始變得比以往任何時候都更容易。 本文將逐步指導您如何建立一個WordPress博客,從主題選擇到使用插件提升安全性和性能,助您輕鬆創建自己的網站。 選擇博客主題和方向 在購買域名或註冊主機之前,最好先確定您計劃涵蓋的主題。個人網站可以圍繞旅行、烹飪、產品評論、音樂或任何激發您興趣的愛好展開。專注於您真正感興趣的領域可以鼓勵持續寫作

如何在父分類的存檔頁面上顯示子分類 如何在父分類的存檔頁面上顯示子分類 Apr 19, 2025 pm 11:54 PM

您想了解如何在父分類存檔頁面上顯示子分類嗎?在自定義分類存檔頁面時,您可能需要執行此操作,以使其對訪問者更有用。在本文中,我們將向您展示如何在父分類存檔頁面上輕鬆顯示子分類。為什麼在父分類存檔頁面上顯示子分類?通過在父分類存檔頁面上顯示所有子分類,您可以使其不那麼通用,對訪問者更有用。例如,如果您運行一個關於書籍的WordPress博客,並且有一個名為“主題”的分類法,那麼您可以添加“小說”、“非小說”等子分類法,以便您的讀者可以

如何在 WordPress 中按帖子過期日期對帖子進行排序 如何在 WordPress 中按帖子過期日期對帖子進行排序 Apr 19, 2025 pm 11:48 PM

過去,我們分享過如何使用PostExpirator插件使WordPress中的帖子過期。好吧,在創建活動列表網站時,我們發現這個插件非常有用。我們可以輕鬆刪除過期的活動列表。其次,多虧了這個插件,按帖子過期日期對帖子進行排序也非常容易。在本文中,我們將向您展示如何在WordPress中按帖子過期日期對帖子進行排序。更新了代碼以反映插件中更改自定義字段名稱的更改。感謝Tajim在評論中讓我們知道。在我們的特定項目中,我們將事件作為自定義帖子類型。現在

如何使用 IFTTT 自動化 WordPress 和社交媒體(及更多) 如何使用 IFTTT 自動化 WordPress 和社交媒體(及更多) Apr 18, 2025 am 11:27 AM

您是否正在尋找自動化 WordPress 網站和社交媒體帳戶的方法? 通過自動化,您將能夠在 Facebook、Twitter、LinkedIn、Instagram 等平台上自動分享您的 WordPress 博客文章或更新。 在本文中,我們將向您展示如何使用 IFTTT、Zapier 和 Uncanny Automator 輕鬆實現 WordPress 和社交媒體的自動化。 為什麼要自動化 WordPress 和社交媒體? 自動化您的WordPre

wordpress主機怎麼建站 wordpress主機怎麼建站 Apr 20, 2025 am 11:12 AM

要使用 WordPress 主機建站,需要:選擇一個可靠的主機提供商。購買一個域名。設置 WordPress 主機帳戶。選擇一個主題。添加頁面和文章。安裝插件。自定義您的網站。發布您的網站。

如何在 WordPress 中顯示查詢數量和頁面加載時間 如何在 WordPress 中顯示查詢數量和頁面加載時間 Apr 19, 2025 pm 11:51 PM

我們的一位用戶詢問其他網站如何在頁腳中顯示查詢數量和頁面加載時間。您經常會在網站的頁腳中看到這一點,它可能會顯示類似以下內容:“1.248秒內64個查詢”。在本文中,我們將向您展示如何在WordPress中顯示查詢數量和頁面加載時間。只需將以下代碼粘貼到主題文件中您喜歡的任何位置(例如footer.php)。 queriesin

See all articles