安裝與配置 Nginx
-
確保你的系統(tǒng)上已經(jīng)安裝了Nginx。
sudo apt-get update sudo apt-get install nginx
-
打開Nginx的主配置文件
/etc/Nginx/nginx.conf
,或根據(jù)你的系統(tǒng)環(huán)境修改為正確的路徑。 -
創(chuàng)建虛擬主機(jī)目錄結(jié)構(gòu):
mkdir -p /var/www/html/example.com mkdir -p /var/www/html/sub.example.com
編輯虛擬主機(jī)配置文件
-
使用文本編輯器如
nano
或vim
打開虛擬主機(jī)配置文件,例如example.com.conf
。 -
在該文件中添加或修改如下內(nèi)容:
server { listen 80; server_name example.com www.example.com; root /var/www/html/example.com; index index.html index.htm; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 根據(jù)實(shí)際情況調(diào)整PHP-FPM socket } }
-
啟用虛擬主機(jī)并測試:
sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/ sudo systemctl reload nginx
使用瀏覽器訪問
http://example.com
來驗(yàn)證配置是否成功。
處理HTTPS和自簽名證書
-
如果你想為
example.com
使用HTTPS并且不想生成自簽名證書,可以使用Let's Encrypt服務(wù)自動獲取免費(fèi)SSL/TLS證書。 -
更新軟件包列表:
sudo apt-get update
-
安裝Certbot:
sudo apt-get install python3-certbot-nginx
-
運(yùn)行Certbot自動化腳本:
sudo certbot --nginx -d example.com -d sub.example.com
這個命令會自動處理SSL設(shè)置和重定向問題。
注意事項(xiàng)
- 在生產(chǎn)環(huán)境中部署Nginx之前,請確保你已正確設(shè)置安全措施。
- 確保所有指向Nginx的外部IP地址都進(jìn)行了必要的防火墻規(guī)則允許。
- 如果使用Let's Encrypt獲取證書,Certbot會自動配置Nginx并提供詳細(xì)的日志信息。
通過以上步驟,你可以輕松地在Nginx上實(shí)現(xiàn)多域或多IP地址的虛擬主機(jī)配置,這不僅提高了系統(tǒng)的可用性和可管理性,還減少了維護(hù)工作量。