如何在Ubuntu 16.04上安裝Nginx
Nginx發音為“ engine x”,是一種免費的,開源的,高性能HTTP和反向代理服務器,為Internet上一些最大的站點提供支持。
與Apache相比,Nginx可以處理大量並發連接,並且每個連接的內存佔用量較小。
在本教程中,我們將討論如何在Ubuntu 16.04系統上安裝和管理Nginx。
先決條件
在開始本教程之前,請確保您以具有sudo特權的用戶身份登錄,並且端口80或443上沒有運行Apache或任何其他服務。
安裝Nginx#
Nginx軟件包在Ubuntu默認軟件存儲庫中可用。 安裝非常簡單,只需運行以下命令:
sudo apt update
sudo apt install nginx
安裝完成後,通過鍵入以下命令檢查Nginx服務的狀態:
sudo systemctl status nginx
輸出應顯示Nginx服務處於活動狀態並正在運行:
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2018-01-05 15:44:04 UTC; 1min 59s ago
Main PID: 1291 (nginx)
CGroup: /system.slice/nginx.service
├─1291 nginx: master process /usr/sbin/nginx -g daemon on; master_process on
└─1293 nginx: worker process
要檢查Nginx版本,請執行以下操作:
sudo nginx -v
nginx version: nginx/1.10.3 (Ubuntu)
調整防火牆號
假設您正在使用 UFW
要管理防火牆,您需要打開HTTP(80
)和HTTPS(443
)端口。
為此,您可以啟用“ Nginx Full”配置文件,其中包括兩個端口的規則:
sudo ufw allow 'Nginx Full'
要驗證防火牆狀態類型:
sudo ufw status
輸出如下所示:
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
Nginx Full ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
Nginx Full (v6) ALLOW Anywhere (v6)
測試安裝
驗證Nginx是否按預期工作 http://YOUR_IP
在您選擇的瀏覽器中,您將看到默認的Nginx歡迎頁面,如下所示:
從Nginx PPA存儲庫安裝Nginx
Ubuntu存儲庫中的Nginx軟件包通常已過時。 要安裝最新的Nginx版本,請使用官方的Nginx PPA存儲庫。
請按照以下步驟在Ubuntu 16.04上安裝最新版本的Nginx:
首先安裝
software-properties-common
包:sudo apt install software-properties-common
使用以下命令添加Nginx PPA存儲庫:
sudo add-apt-repository ppa:nginx/stable
更新軟件包列表並安裝Nginx:
sudo apt update
sudo apt install nginx
安裝完成後,請使用以下命令檢查Nginx版本:
sudo nginx -v
輸出將如下所示:
nginx version: nginx/1.12.2
使用systemctl#管理Nginx服務
您可以通過與其他任何systemd單元相同的方式來管理Nginx服務。
要停止Nginx服務,請運行:
sudo systemctl stop nginx
要啟動Nginx服務,請輸入:
sudo systemctl start nginx
重新啟動Nginx服務:
sudo systemctl restart nginx
進行一些配置更改後,請重新加載Nginx服務:
sudo systemctl reload nginx
禁用Nginx服務以在啟動時啟動:
sudo systemctl disable nginx
重新啟用Nginx服務以再次啟動:
sudo systemctl enable nginx
Nginx配置文件的結構和最佳實踐
- 所有Nginx配置文件都位於
/etc/nginx/
目錄。 - Nginx的主要配置文件是
/etc/nginx/nginx.conf
。 - 為了使Nginx配置更易於維護,建議為每個域創建一個單獨的配置文件。 您可以根據需要擁有任意數量的服務器阻止文件。
- Nginx服務器阻止文件存儲在
/etc/nginx/sites-available
目錄。 Nginx不會使用此目錄中找到的配置文件,除非它們鏈接到/etc/nginx/sites-enabled
目錄。 - 要激活服務器塊,您需要從配置文件站點中的目錄中創建符號鏈接(指針)。
sites-available
目錄到sites-enabled
目錄。 - 遵循標準的命名約定是一個好主意,例如,如果您的域名是
mydomain.com
那麼您的配置文件應命名為/etc/nginx/sites-available/mydomain.com.conf
- 的
/etc/nginx/snippets
目錄包含可包含在服務器阻止文件中的配置摘要。 如果使用可重複的配置段,則可以將這些段重構為片段,並將片段文件包括到服務器塊中。 - Nginx日誌文件(
access.log
和error.log
)位於/var/log/nginx/
目錄。 建議有一個不同的access
和error
每個服務器塊的日誌文件。 - 您可以將域文檔的根目錄設置為所需的任何位置。 webroot的最常見位置包括:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>
結論#
恭喜,您已在Ubuntu 18.04服務器上成功安裝了Nginx。 現在,您準備開始部署應用程序並將Nginx用作Web或代理服務器。
如今,安全證書是所有網站的“必備”功能,要使用免費的“讓我們加密SSL”證書來保護您的網站,可以查看以下指南:
讓我們在Ubuntu 16.04上加密來保護Nginx
nginx ubuntu