比較 Nginx 和 Apache

比較 Nginx 和 Apache

二十年來,Apache 改變了不斷萎縮的 Web 伺服器市場。 Nginx 不僅已經趕上了 Apache,而且現在已經成為許多高流量網站的選擇。 Apache 使用者可能對此問題有不同意見。這就是為什麼很難得出哪個網站主機更好的結論。事實上,Apache 和 Nginx 都是完整 Web 堆疊(LAMP 和 LEMP)的核心部分,最終選擇取決於個人需求。

例如,運行 Drupal 網站的人通常會選擇 Apache,而WordPress用戶似乎更喜歡 Nginx。因此,本文的目的是幫助您更好地了解自己的需求,而不是為每個人提供刻板的建議。以下 Nginx 和 Apache 之間的比較將為您提供準確的概述。

Nginx 還是 Apache 是更好的伺服器?

1.人氣

截至 2012 年,超過 65% 的網站是基於 Apache。 Apache 的流行並不僅僅因為它悠久的歷史。這是萬維網開發的首批開創性軟體之一。然而,時代已經改變了。根據 W3Tech.com 統計,截至 2019 年 1 月 14 日,使用 Apache 伺服器的網站數量(44.4%)僅略高於 Nginx(40.9%)。 Nginx 和 Apache 佔據了近 85% 的 Web 伺服器市場。

比較 Nginx 和 Apache

當談到高流量網站時,下面的圖表很有趣。特別是,Nginx 位於 Apache 之上,但位於 Google Servers 之下,Google Servers 是一項為YouTube、Gmail 和 Drive 等網站提供伺服器的服務。

比較 Nginx 和 Apache

大量網站已從 Apache 遷移到 Nginx。顯然,Nginx 被認為是一種更新、更流行的 Web 伺服器。 Apache 上的高流量網站(例如維基百科和紐約時報)經常使用像 Varnish 這樣的前端 HTTP 代理。

結論:Apache 和 Nginx 之間的受歡迎程度差距正在迅速縮小。就這個因素而言,Apache 和 Nginx 是並列的。

2. 速度

良好的 Web 伺服器的主要特徵是它必須運行快速,並且能夠輕鬆容納來自任何地方的連接和流量。為了測量伺服器速度,本文比較了兩個基於 Apache (Expedia.com) 和 Nginx (Booking.com) 的熱門旅遊網站。使用名為 Bitcatcha 的線上工具,對多個伺服器進行了比較,並根據 Google 的 200+ 毫秒基準進行了測量。基於 Nginx 的 Booking.com 被評為「異常快速」。相比之下,基於 Apache 的 Expedia.com 被評為「高於平均水平,並且可以改進」。

如果您多次使用這兩個旅遊網站,您可以確認 Expedia 回傳查詢結果的速度比 Booking 慢一些。

以下是其他一些網站的兩個主機之間的比較。 Nginx 在下面的大多數情況下都更快,但有一個例外。

比較 Nginx 和 Apache

結論:本輪Nginx獲勝。

3. 安全性

Nginx 和 Apache 都非常重視其網站的安全性。如果沒有針對DDoS 攻擊、惡意軟體和網路釣魚的對策,任何強大的系統都是不完整的。兩台伺服器都會定期發布安全報告和建議,確保各個層級的安全性增強。

結論:本輪Nginx和Apache再次打成平手。

4. 同時連接

需要注意的一點是,Apache 在某些方面無法與 Nginx 的規模和功能相比。畢竟,Nginx 最初是為了加速 FastCGI 和 SCGI 處理程序而設計的。然而,從Apache 2.4(預設版本)開始,並發連線數有了巨大的提高。這種改進進展到什麼程度值得研究。

基於 Loadimpact.com 的測試,本文再次將 Booking.com (Nginx) 與 Expedia.com (Apache) 進行比較。對於 25 個虛擬用戶,Nginx 網站每秒可以記錄 200 個請求,比 Apache(每秒 80 個請求)高出 2.5 倍。顯然,如果你有一個專門的高流量網站,Nginx 是一個更安全的選擇。

比較 Nginx 和 Apache

結論:本輪Nginx獲勝。

5. 靈活性

網路主機必須足夠靈活以允許自訂。 Apache 透過使用 Nginx 不支援的 .htaccess 工具,在這方面做得很好。它允許管理任務的分散。第三方管理員和二級管理員可能無法存取主伺服器。此外,Apache 支援 60 多個模組,使其具有高度可擴充性。這就是 Apache 更受共享託管提供者歡迎的原因。

比較 Nginx 和 Apache

結論:Apache 贏得本輪比賽。

其他參數

在此之前,Nginx 與 Apache 不同,對 Windows 作業系統沒有很好的支援。然而,情況已不再如此。另外,Apache在負載平衡和預留代理方面也被認為相當薄弱。但現在一切都變了!

最後結果

Nginx以2-1的比數險勝。話雖如此,從技術規格方面對 Nginx 和 Apache 進行客觀比較就能得到全面的了解。最終的結論是,這兩個網站主機都以自己的方式有用。

雖然 Apache 應該與前端伺服器一起使用(Nginx 本身就是一個選項),但 Nginx 可以更好地提供更多的客製化和靈活性。


什麼是惡意軟體 HackTool:Win32/Keygen?如何去除?

什麼是惡意軟體 HackTool:Win32/Keygen?如何去除?

您是否掃描過您的設備並發現它感染了 HackTool:Win32/Keygen?在您使用破解或金鑰產生器啟動進階軟體後,Windows Defender 可能會自動警告您有關此惡意軟體的存在。

在 Windows 10 上建立備份和還原點(Restore Point)的說明

在 Windows 10 上建立備份和還原點(Restore Point)的說明

探索如何在Windows 10上建立和管理還原點,這是一項有效的系統保護功能,可以讓您快速還原系統至先前狀態。

在 Windows 10 中開啟裝置管理員的 15 種方法

在 Windows 10 中開啟裝置管理員的 15 種方法

您可以使用以下 15 種方法輕鬆在 Windows 10 中開啟<strong>裝置管理員</strong>,包括使用命令、捷徑和搜尋。

Windows「顯示桌面」的 10 種超快速方法

Windows「顯示桌面」的 10 種超快速方法

很多人不知道如何快速顯示桌面,只好將各個視窗一一最小化。這種方法對於用戶來說非常耗時且令人沮喪。因此,本文將向您介紹Windows中快速顯示桌面的十種超快速方法。

如何使用 Windows Repair 修復 Windows 錯誤

如何使用 Windows Repair 修復 Windows 錯誤

Windows Repair 是一款有效的 Windows 錯誤修復工具,幫助使用者修復與 Internet Explorer、Windows Update 和其他重要程式相關的錯誤。

如何在 Windows 10 中開啟資料夾選項或檔案總管選項

如何在 Windows 10 中開啟資料夾選項或檔案總管選項

您可以使用檔案總管選項來變更檔案和資料夾的工作方式並控制顯示。掌握如何在 Windows 10 中開啟資料夾選項的多種方法。

有關在 Windows 10 上刪除使用者帳戶的 5 種方法的說明

有關在 Windows 10 上刪除使用者帳戶的 5 種方法的說明

刪除不使用的使用者帳戶可以顯著釋放記憶體空間,並讓您的電腦運行得更流暢。了解如何刪除 Windows 10 使用者帳戶的最佳方法。

如何使用Bootsect /nt60將VBC更新為BOOTMGR

如何使用Bootsect /nt60將VBC更新為BOOTMGR

使用 bootsect 命令能夠輕鬆修復磁碟區引導程式碼錯誤,確保系統正常啟動,避免 hal.dll 錯誤及其他啟動問題。

Windows 11 中的存檔應用程式功能是什麼?應該啟用還是停用它?

Windows 11 中的存檔應用程式功能是什麼?應該啟用還是停用它?

存檔應用程式是一項功能,可以自動卸載您很少使用的應用程序,同時保留其關聯的檔案和設定。了解如何有效利用 Windows 11 中的存檔應用程式功能。

如何在 Windows 10 上為 BlueStacks 5 啟用虛擬化 (VT)

如何在 Windows 10 上為 BlueStacks 5 啟用虛擬化 (VT)

要啟用虛擬化,您必須先進入 BIOS 並從 BIOS 設定中啟用虛擬化,這將顯著提升在 BlueStacks 5 上的效能和遊戲體驗。