搜尋
首頁CMS教程&#&按測量Brotli壓縮對WordPress的影響

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
您將使用WordPress做什麼?您將使用WordPress做什麼?Apr 27, 2025 am 12:14 AM

WordPresscanbeusedforvariouspurposesbeyondblogging.1)E-commerce:WithWooCommerce,itcanbecomeafullonlinestore.2)Membershipsites:PluginslikeMemberPressenableexclusivecontentareas.3)Portfoliosites:ThemeslikeAstraallowstunninglayouts.Ensuretomanageplugins

WordPress適合創建投資組合網站嗎?WordPress適合創建投資組合網站嗎?Apr 26, 2025 am 12:05 AM

是的,wordpressisisexcellentforcortingaportfoliowebsite.1)itoffersnumeroversnumeroverportfolio-spificthemeslike'astra'astra'astra'astra'astra'astra'astra'astra'astra'elementor'Enelementor'enableIntiviveSiveSign,Thoughtemanycanslowthesite.3)

使用WordPress而不是從頭開始編碼網站的優點是什麼?使用WordPress而不是從頭開始編碼網站的優點是什麼?Apr 25, 2025 am 12:16 AM

WordPressisadvantageousovercodingawebsitefromscratchdueto:1)easeofuseandfasterdevelopment,2)flexibilityandscalability,3)strongcommunitysupport,4)built-inSEOandmarketingtools,5)cost-effectiveness,and6)regularsecurityupdates.Thesefeaturesallowforquicke

是什麼使WordPress成為內容管理系統?是什麼使WordPress成為內容管理系統?Apr 24, 2025 pm 05:25 PM

WordPressIsAcmsDuetoItseAsofuse,自定義,USERMANAMECTION,SEO和COMMUNITYSUPPORT.1)ITSIMPLIFIESCONTENTMANGAMEWITHANINTUISIDERFEEFFECE.2)提供extentensiveCustomizationThroughThroughTheMesandPlugins.3)supportrobustuserrolesandplugins.4)supportrobustuserrolesandpermissions.4)增強

wordpress怎麼加評論框wordpress怎麼加評論框Apr 20, 2025 pm 12:15 PM

在 WordPress 網站上啟用評論功能,可以為訪客提供參與討論和分享反饋的平台。為此,請按照以下步驟操作:啟用評論:在儀錶盤中,導航至“設置”>“討論”,並選中“允許評論”複選框。創建評論表單:在編輯器中,單擊“添加塊”並蒐索“評論”塊,將其添加到內容中。自定義評論表單:通過設置標題、標籤、佔位符和按鈕文本來定制評論塊。保存更改:單擊“更新”以保存評論框並將其添加到頁面或文章中。

wordpress怎麼複製子站wordpress怎麼複製子站Apr 20, 2025 pm 12:12 PM

如何復制 WordPress 子站?步驟:在主站創建子站。在主站克隆子站。將克隆導入目標位置。更新域名(可選)。分開插件和主題。

wordpress怎麼寫頁頭wordpress怎麼寫頁頭Apr 20, 2025 pm 12:09 PM

在WordPress中創建自定義頁頭的步驟如下:編輯主題文件“header.php”。添加您的網站名稱和描述。創建導航菜單。添加搜索欄。保存更改並查看您的自定義頁頭。

wordpress評論怎麼顯示wordpress評論怎麼顯示Apr 20, 2025 pm 12:06 PM

WordPress 網站中啟用評論功能:1. 登錄管理面板,轉到 "設置"-"討論",勾選 "允許評論";2. 選擇顯示評論的位置;3. 自定義評論表單;4. 管理評論,批准、拒絕或刪除;5. 使用 <?php comments_template(); ?> 標籤顯示評論;6. 啟用嵌套評論;7. 調整評論外形;8. 使用插件和驗證碼防止垃圾評論;9. 鼓勵用戶使用 Gravatar 頭像;10. 創建評論指

See all articles

熱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

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

熱工具

SublimeText3 Mac版

SublimeText3 Mac版

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

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具