前言
有時候我們想在一臺nginx上配置多個站點,比如我們將www.webA.com以及www.webB.com同時部署到一臺nginx上,但是我們不能在nginx目錄裏同時運行兩個不同的站點。此時,我們可以利用虛擬目錄,比如,我們將站點A放在 /www/webA下,將站點B放在/www/webB下,具體配置過程如下:
我們的nginx 配置文件在 /etc/nginx下,我們在/etc/nginx 下新建一個 vhost文件夾,此文件夾我們用來放置站點的配置文件。
1. 新建vhost文件夾
mkdir /etc/nginx/vhost
2. 進入到vhost目錄
cd vhost
3. 新建站點A的配置文件
vim confA.conf
在站點A配置文件裏寫
server {
listen 80; # 站點監聽端口
server_name www.webA.com ; # 站點域名
root /www/webA; # 站點存放目錄
index index.html index.htm index.php; #站點默認導航
}
4. 新建站點B的配置文件
vim confB.conf
站點B的配置文件和A是一樣的,出了root站點目錄以及站點域名不同,各自使用各自的
server {
listen 80; # 站點監聽端口
server_name www.webB.com ; # 站點域名
root /www/webB; # 站點存放目錄
index index.html index.htm index.php; #站點默認導航
}
5. 配置nginx主配置文件
nginx配置文件在 /etc/nginx/nginx.conf中
vim /etc/nginx/nginx.conf
在nginx配置文件http塊中,加入下面一句
http {
...
include /etc/nginx/vhost/*.conf; 加入的語句,
#表示包含我們剛纔建立的配置文件
}
6. 檢查nginx配置文件是否正確
nginx -t #如果有問題則定位出現在問題出現在哪裏,沒問題就繼續後面的操作。
7. 重啓nginx
nginx -s reload #此方式是優雅的重啓nginx
8. 打開瀏覽器,輸入站點A和B進行查看效果