Nginx 虛擬主機分為基於網路卡或者 ip、或基於埠和基於域名三大類。其中 基於網路卡或ip和基於埠 私人應用場合較多,多用於測試,基於域名則是實際應用場合中的主要形式,一般一臺伺服器維持一個域名。如果網站訪問量小,一臺伺服器可以部署數個網站。如何搭建 LNMP 平臺可參考 Wiki PHP 環境安裝:Linux 開發環境 。
建議在 Nginx 安裝目錄下建立 conf.d
目錄,以便於基於不同目的的虛擬主機配置檔案的匯入。
cache_temp
client_body_temp
conf
conf.d
core
fastcgi_temp
html
logs
pid
proxy_temp
sbin
scgi_temp
uwsgi_temp
本機的 Nginx 版本為
nginx version: nginx/1.18.0
修改 nginx.conf
檔案,在 http
段新增
include /opt/nginx/conf.d/*.conf;
進入 conf.d
目錄,編輯 domain_based.conf
檔案
server {
listen 80;
server_name test.nginx1.my;
location / {
root /home/html/nginx1;
index nginx1.html;
}
}
server {
listen 80;
server_name test.nginx2.my;
location / {
root /home/html/nginx2;
index nginx2.html;
}
}
響應的建立相應目錄和檔案,如下
mkdir -p /home/html/nginx1 /home/html/nginx2
echo "<h1> test.nginx1.my<h1>" > /home/html/nginx1/nginx1.html
echo "<h1> test.nginx2.my<h1>" > /home/html/nginx2/nginx2.html
開啟 Nginx,關閉防火牆。
nginx # vim /etc/profile 設定 export PATH="/opt/nginx/sbin:$PATH"
systemctl stop firewalld
也可以將 80 埠永久放行
firewall-cmd --zone=public --add-port=80/tcp --permanent
臨時性關閉 Selinux,再次開機後無效。
setenforce 0
永久性關閉 Selinux,但存在系統安全風險。
vim /etc/selinux/config
SELINUX=disabled
不要忘了在你的物理機新增主機名,windows 環境下 hosts
檔案所在路徑為
C:\Windows\System32\drivers\etc
訪問 test.nginx1.my
訪問 test.nginx2.my
本作品採用《CC 協議》,轉載必須註明作者和本文連結