Nginx下配置虛擬主機的三種方法
Nginx下,一個server標籤就是一個虛擬主機。
1、基於域名的虛擬主機,通過域名來區分虛擬主機——應用:外部網站
2、基於埠的虛擬主機,通過埠來區分虛擬主機——應用:公司內部網站,外部網站的管理後臺
3、基於ip的虛擬主機,幾乎不用。
基於域名配置虛擬主機步驟:
需要建立/data/www /data/bbs目錄,windows本地hosts新增虛擬機器ip地址對應的域名解析;對應域名網站目錄下新增index.html檔案;
nginx.conf配置檔案新增如下程式碼:
server {
listen 80;
server_name www.linuxidc.com;
index index.html;
root /data/www;
}
server {
listen 80;
server_name bbs.linuxidc.com;
index index.html;
root /data/bbs;
}
驗證結果,使用curl測試,或者瀏覽器輸入域名訪問;
# curl -xlocalhost:80 www.linuxidc.com
this is linuxidc linux
# curl -xlocalhost:80 bbs.linuxidc.com
this is linuxidc bbs
基於埠的虛擬主機配置: 使用埠來區分,瀏覽器使用域名或ip地址:埠號 訪問;
server
{
listen 8000;
server_name www.linuxidc.com;
root /data/www;
}
server
{
listen 8001;
server_name www.linuxidc.com;
root /data/bbs;
}
驗證結果,使用curl測試,或者瀏覽器輸入域名訪問;
# curl www.linuxidc.com:8000
this is linuxidc linux
# curl www.linuxidc.com:8001
this is linuxidc bbs
基於ip地址的虛擬主機配置: 通過ip來訪問,需要配置多個ip;
# ifconfig eth0:1 192.168.22.21
server
{
listen 192.168.20.20:80;
server_name www.linuxidc.com;
root /data/www;
}
server
{
listen 192.168.20.21:80;
server_name www.linuxidc.com;
root /data/bbs;
}
驗證結果,使用curl測試,或者瀏覽器輸入域名訪問;
# curl 192.168.22.20
this is linuxidc linux
# curl 192.168.22.21
this is linuxidc bbs