NGINX 與 Apache:什麼是適用於 WordPress 的最佳 Web 服務器?

已發表: 2023-02-12

要運行 WordPress 網站,您需要將其託管在網絡服務器上。 這使網絡瀏覽器能夠請求您網站的數據。 但是,有多種 Web 服務器選項,這使得選擇一個成為一項艱鉅的任務。

雖然有許多 Web 服務器可供選擇,但 Apache 和 NGINX 是最受歡迎的選擇。 但兩者中哪一個是最好的 Web 服務器?

這兩個 Web 服務器處理超過 50% 的 Web 流量。 雖然它們有許多共同點,但您需要了解它們之間的差異,這可以幫助您為您的網站選擇合適的。 在本文中,我們將討論 NGINX 和 Apache 之間的區別。 然後,我們將了解如何在這兩種類型的服務器上安裝 WordPress。 讓我們開始吧!

目錄
1.比較性能:NGINX 與 Apache
1.1. 阿帕奇
1.2. NGINX
2. Apache 和 NGINX 有什麼區別?
3.什麼是最好的 WordPress Web 服務器軟件?
3.1. 如何在 Apache 上安裝 WordPress
3.1.1. 第 1 步:在您的服務器上創建一個 Sudo 用戶
3.1.2. 第 2 步:安裝 Apache Web 服務器
3.1.3. 第 3 步:安裝 MySQL 數據庫服務器
3.1.4. 第 4 步:安裝 PHP
3.1.5. 第 5 步:設置虛擬主機
3.1.6. 第 6 步:安裝 WordPress
3.2. 如何在 NGINX 上安裝 WordPress
3.2.1. 第一步:安裝MySQL
3.2.2. 第 2 步:創建 MySQL 數據庫
3.2.3. 第 3 步:安裝 WordPress
3.2.4. 第 4 步:配置 WordPress
3.2.5. 第 5 步:安裝 PHP
3.2.6. 第 6 步:安裝 NGINX 單元
4.繼續學習 WP Engine

比較性能:NGINX 與 Apache

正如我們之前提到的,NGINX 和 Apache 是最突出的 Web 服務器選項。 它們可以處理不同的工作負載,並與其他軟件一起組成 LAMP 和 LEMU 堆棧。 但是,為了準確比較這些 Web 服務器,您需要了解它們的不同之處。

阿帕奇

Apache 是這兩個服務器中較舊的一個,由 Robert McCool 於 1995 年由 Apache 軟件基金會首次發布和開發。 自 1996 年以來,Apache 一直是頂級 Web 服務器,大約 38.7% 的網站使用它。 目前,Apache 基金會繼續為 Apache 發布版本。

Apache 模塊提供了一系列好處,包括:

  • 預安裝選項: Apache 預安裝在主要的 Linux 發行版上。
  • 用戶社區: Apache 有一個龐大的用戶社區,可以互相幫助。
  • 動態模塊加載系統:該系統阻止您在更新服務器時接觸主包。
  • .htaccess中的 URL 重寫: Apache 2 使用mod_rewrite進行乾淨的重寫。
  • 模塊化設計:由於模塊化設計,Apache 提供了更大的定制性和靈活性。
  • 使用httpd.conf文件的服務器配置:配置很容易,因為您不需要訪問主apache2.conf文件。
  • 充當“網關”服務器: Apache 還可以充當反向代理服務器的功能。

Apache 服務器是一個用戶友好的 Web 服務器,具有許多自定義功能。 該軟件還與 Unix 和 Windows 服務器兼容。

NGINX

NGINX 於 2004 年由 NGINX Inc. 創始人 Igor Sysoev 發布,用於解決 C10K 問題。 這是 Web 服務器在處理 10,000 個或更多並發連接請求時面臨的挑戰。

為了解決這個問題,NGINX 被開發為異步、非阻塞和基於事件的架構。 這是 NGINX 和 Apache 之間的主要區別之一。 這也是大約 32.1% 的網站使用 NGINX 的原因之一。

NGINX 提供了許多其他好處,例如:

  • 輕量級設計:NGINX 可以在最小的硬件上運行,並且使用的內存比 Apache 少。
  • 靜態內容處理:NGINX 在正確配置時提供更好的靜態內容處理。
  • 重載響應:NGINX 在流量大的時候保持高響應。
  • 用戶友好的設計:學習曲線更容易,NGINX 對初學者友好。
  • 模塊化設置:該服務器的設計允許靈活構建和一系列第三方模塊。
  • 反向代理: NGINX Plus 提供了一種基於軟件的反向代理,其功能與基於硬件的解決方案具有相似的功能,而且成本更低。

NGINX 和 NGINX Plus 通常被視為高流量網站的更好選擇,因為它的負載平衡功能可以處理更重的負載。 它也是在包含大量靜態 Web 內容的網站上保持最佳性能的理想選擇。

Apache 和 NGINX 有什麼區別?

雖然 NGINX 和 Apache HTTP Server 很相似,但兩者之間存在許多差異。 最大的區別在於這些 Web 服務器處理多個客戶端請求的方式。 Apache 使用分叉解決方案,而 NGINX 使用非阻塞事件循環。

Apache 提供了多處理模塊 (MPM),用於規定請求處理的工作方式。 分叉的方法使換出連接處理架構更容易。 這種方法中使用的模塊是對 Apache 核心功能的補充。 每個多處理模塊啟動一個不同的進程來處理服務器請求。

一個例子是mpm-worker——一個創建處理多個線程的進程的模塊。 每個線程都是到服務器的單個連接。 添加此模塊允許擴展服務器並啟用大量流量的管理。

NGINX 不同,它只生成工作進程來同時處理請求。 這些進程是連續檢查和處理多個請求的非阻塞事件。 這種連續檢查會形成一個循環。 循環中的所有事件都是異步的,並在連接關閉時從循環中刪除。

什麼是最好的 WordPress Web 服務器軟件?

Apache 和 NGINX 都可以很好地與 WordPress 託管配合使用。 但是,如果您想要提高性能,NGINX 可能是更好的選擇。 讓我們來看看如何在這兩種類型的服務器上安裝 WordPress,這樣您就可以準備好開始使用任何一種了。

如何在 Apache 上安裝 WordPress

要在 Apache 上安裝 WordPress,您需要設置一個 LAMP(Linux、Apache、MySQL 和 PHP)堆棧。 這通常在 Ubuntu 服務器上完成。

第 1 步:在您的服務器上創建一個 Sudo 用戶

要創建用戶,請以 root 用戶身份登錄到您的服務器。 然後使用下面的添加用戶命令創建一個新帳戶:

 $ adduser username

服務器將提示您設置並確認密碼。 接下來,填寫用戶的詳細信息。 然後您可以為該用戶提供sudo訪問權限。 此訪問權限允許用戶執行通常由 root 用戶完成的命令。

要將用戶添加到sudo組,請輸入以下命令:

 $ usermod -aG sudo username

然後,您需要以 sudo 用戶的身份登錄服務器以完成安裝過程的其餘部分。

第 2 步:安裝 Apache Web 服務器

要安裝 Apache,您需要使用 Ubuntu 包管理器apt 。 這是 Ubuntu 服務器上的默認設置。 在輸入密碼後輸入以下sudo命令開始安裝:

 $ sudo apt update $ sudo apt install apache2

然後您將看到將要安裝的包,以及需要多少磁盤空間。 按Y ,然後按 Enter開始安裝。

第 3 步:安裝 MySQL 數據庫服務器

接下來,您需要安裝數據庫管理系統 MySQL。 包管理器中的以下命令將開始安裝:

 $ sudo apt install mysql-server

所需的軟件包和磁盤空間將再次顯示。 要開始安裝,請按Y並設置 root 密碼。

第 4 步:安裝 PHP

PHP 是將代碼處理為動態內容的 LAMP 堆棧的一部分。 要安裝它,您應該輸入以下命令:

 $ sudo apt install php libapache2-mod-php php-mysql

然後 PHP 應該可以毫無問題地安裝。 您需要重新啟動服務器才能完成堆棧安裝。 為此,請輸入以下命令:

 $ sudo systemctl restart apache2

您的 LAMP 堆棧現已安裝和配置。

第 5 步:設置虛擬主機

虛擬主機封裝配置細節,是推薦的步驟。 封裝允許您在一台服務器上託管多個網站。

Apache 服務器默認為/var/www/html目錄,這對於多個網站來說是笨拙的。 要創建虛擬主機,您需要在/var/www中為新網站的域設置目錄結構。

使用以下命令創建此結構:

 sudo mkdir /var/www/new_domain

new_domain更改為您網站的域。 然後使用nano命令創建一個包含示例內容的index.html文件:

 $ nano /var/www/new_domain/index.html

為確保 Apache 為您的內容提供服務,您還需要創建一個主機文件。 以下命令創建配置文件:

 $ sudo nano /etc/apache2/sites-available/your_domain.conf

然後添加以下配置塊:

 <VirtualHost *:80> ServerAdmin [email protected] ServerName new_domain ServerAlias www.new_domain DocumentRoot /var/www/new_domain ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>

下一個命令啟用該文件,而第二個命令禁用服務器上的默認站點:

 $ sudo a2ensite new_domain.conf $ sudo a2dissite 000-default.conf

您的虛擬主機現在應該已經配置好並且可以正常工作了。 這個新創建的目錄應該用於安裝 WordPress。

第 6 步:安裝 WordPress

配置 LAMP 堆棧後,您可以安裝 WordPress。 下載最新版本的 WordPress 並使用以下命令進行安裝:

 $ sudo apt update $ sudo apt install wordpress php libapache2-mod-php mysql-server php-mysql

接下來,為 WordPress 配置 Apache 並創建 MySQL 數據庫。 然後使用WordPress網頁瀏覽器界面完成網站配置。 這包括創建網站標題和設置密碼。

如何在 NGINX 上安裝 WordPress

要在 NGINX 上安裝 WordPress,您需要一台運行 NGINX Unit 支持的發行版之一的服務器。 如果您使用的是 Linux,您將創建一個 LEMU(Linux、NGINX、MySQL 和 NGINX Unit)堆棧。

第一步:安裝MySQL

在開始之前,創建一個具有sudo訪問權限的服務器用戶。 以 root 用戶身份登錄到您的服務器,並使用以下命令創建一個新帳戶:

 $ adduser username

在為用戶填寫詳細信息之前,您需要輸入並確認密碼。 然後您可以為該用戶提供sudo訪問權限。 此訪問權使用戶能夠執行通常由 root 用戶完成的命令。

要將用戶添加到sudo組,請輸入以下命令:

 $ usermod -aG sudo username

以sudo用戶登錄服務器,使用以下命令安裝MySQL:

 $ sudo apt-get install mysql-server

輸入新的根密碼。 然後可以運行 MySQL 配置工具。 這是一個配置嚮導,可引導您完成安裝過程。

第 2 步:創建 MySQL 數據庫

一旦 MySQL 準備就緒,您就可以創建一個新數據庫。 您還需要創建一個具有管理權限的新用戶。 為此,請登錄 MySQL root 帳戶並輸入以下命令:

 $ sudo mysql -u root -p mysql> CREATE DATABASE wordpress; mysql> CREATE USER [email protected] IDENTIFIED BY 'secure_password'; mysql> GRANT ALL PRIVILEGES ON wordpress.* TO [email protected]; mysql> FLUSH PRIVILEGES; mysql> Exit Bye

Flush Privileges 命令確保 MySQL 識別您所做的更改。 您應該更改默認用戶名和密碼以符合您的偏好。

第 3 步:安裝 WordPress

在安裝 WordPress 之前,您應該使用以下命令創建一個臨時文件位置:

 $ cd /var/www/ $ sudo wget http://wordpress.org/latest.tar.gz $ sudo tar xzvf latest.tar.gz

此命令還會下載和解壓縮 WordPress。

第 4 步:配置 WordPress

接下來,創建 WordPress 配置文件的副本並使用以下命令重命名它:

 $ cd /var/www/wordpress $ sudo cp wp-config-sample.php wp-config.php

您可以更新文件中的 SALT 密鑰以提高安全性。 使用nano打開wp-config.php文件,並使您能夠搜索 SALT 鍵:

 $ sudo nano wp-config.php

用新生成的密鑰替換密鑰,然後保存並退出文件。

第 5 步:安裝 PHP

雖然可以使用 NGINX Unit,但仍應安裝 PHP。 您可以使用以下命令來執行此操作:

 $ sudo apt-get install -y php7.0 php7.0-common php7.0-mbstring php7.0-gd php7.0-intl php7.0-xml php7.0-mysql php7.0-mcrypt

這是必要的,因為 WordPress 依賴於 NGINX Unit 中未包含的幾個擴展。

第 6 步:安裝 NGINX 單元

最後,您需要為您的服務器操作系統安裝預編譯的 NGINX 單元。 使用以下命令安裝 PHP 模塊:

 $ sudo apt-get install unit-php $ sudo service unit restart $ sudo curl -X PUT --data-binary @/usr/share/doc/unit-php/examples/unit.config --unix-socket /run/control.unit.sock http://localhost/config $ curl http://localhost:8300/

這些命令還驗證 NGINX Unit 和 PHP 是否正常工作。

接下來,您需要安裝和配置 NGINX Open Source。 您可以從主線分支安裝預構建的包。 其中包括最新的功能和補丁。 完成此配置後,WordPress 就可以使用了。

繼續學習 WP Engine

Apache 和 NGINX 是最流行的 Web 服務器軟件選項。 但在 NGINX 與 Apache 的較量中,究竟誰勝出? 雖然它們在很多方面都很相似,但 NGINX 服務器確實為高流量網站提供了更好的性能。 但是,Apache 擁有更大的社區和更多的文檔。

當然,要開發出色的網站,您需要具備多項條件。 其中包括正確的工具、最好的資源和一流的虛擬主機!

如需更多 SEO 和網絡相關資源,例如 WordPress 優化和了解 HTTP 400 錯誤,請查看我們的資源中心以改進您的網站。