獲取全套nginx教程否淤,請訪問瓦力博客
這小節(jié)小菜將記錄三種虛擬主機的配置料身,第一種是nginx虛擬主機單網(wǎng)卡多IP配置
落蝙,第二種是nginx虛擬主機基于多端口配置
先紫,第三種是nginx虛擬主機基于多域名配置
來實現(xiàn)
小菜將一一舉例治泥,企業(yè)中長用到的還是后兩種方法。
nginx -t -c /etc/nginx/nginx.conf #命令了檢測語法
nginx -s reload -c /etc/nginx/nginx.conf #重啟配置
nginx -s stop -c /etc/nginx/nginx.conf #停止nginx服務
nginx -c /etc/nginx/nginx.conf #重啟nginx服務
開始之前先做點準備工作遮精,輸入
cd /usr/share/nginx/html
在該目錄下面我們建兩個文件夾server1
和server2
居夹,在文件建里面分別建index.html
,內(nèi)容為
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
</head>
<body>
<h1>服務器server1</h1>
</body>
</html>
將index.html中的server1
修改為server2
。創(chuàng)建好后路徑視圖
/usr/share/nginx/html
|
|--server1
| |--index.html
|
|--server2
|--index.html
進入nginx配置本冲,將默認的default.conf
拷貝兩份准脂,分別命名為server1.conf
和server2.conf
cd /etc/nginx/conf.d
cp default.conf server1.conf
cp default.conf server2.conf
1.單網(wǎng)卡多IP配置
查看本機ip
# ip a
輸入信息
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:16:3e:0c:3f:85 brd ff:ff:ff:ff:ff:ff
inet 172.19.139.239/20 brd 172.19.143.255 scope global eth0
valid_lft forever preferred_lft forever
可以看出有兩個網(wǎng)卡,一個是lo
是本地回環(huán)網(wǎng)卡檬洞,一個是物理網(wǎng)卡。從172.19.139.239/20 brd 172.19.143.255
地址段中可添加ip添怔,添加ip前先ping一下,防止和本地ip沖突
ping 172.19.139.240
ping不通時澎灸,說明未和本地ip沖突遮晚,然后添加到本地設備性昭,由于我的機器本地設備是eth0
ip a add 172.19.139.240/20 dev eth0
添加好ip之后查看下
ip a
輸入信息
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:16:3e:0c:3f:85 brd ff:ff:ff:ff:ff:ff
inet 172.19.139.239/20 brd 172.19.143.255 scope global eth0
valid_lft forever preferred_lft forever
inet 172.19.139.240/20 scope global secondary eth0
valid_lft forever preferred_lft forever
我們看到172.19.139.240/20
就被添加上去,然后切換到nginx配置目錄
cd /etc/nginx/conf.d
vim server1.conf
#這里我們只修改兩處地方
#將原來的listen 80 修改為 listen 172.19.139.240:80;
listen 172.19.139.240:80;
#將原來指向的目錄root /usr/share/nginx/html 修改為 root /usr/share/nginx/html/server1;
root /usr/share/nginx/html/server1;
server2.conf文件和server1.conf修改的地方一樣糜颠,只不過ip和文件路徑指定不同汹族。修改好后其兴,重啟nginx服務就可以了
nginx -s stop -c /etc/nginx/nginx.conf #停止nginx服務
nginx -c /etc/nginx/nginx.conf #重啟nginx服務
在虛擬機里是可以訪問的顶瞒,但是小菜我用的是阿里云服務器,阿里云服務器對外的訪問ip是一個元旬。單網(wǎng)卡虛擬主機配置在阿里云服務器上不能訪問榴徐。
2.單ip多端口配置
ip多端口配置這個很好理解匀归,就是在nginx上監(jiān)聽不同的端口號,我們來直接修改端口號
cd /etc/nginx/conf.d
vim server1.conf
#將原來的listen 172.19.139.240:80修改為 listen 80 ;
listen 80;
vim server2.conf
listen 9000;
修改完成后
nginx -s stop -c /etc/nginx/nginx.conf #停止nginx服務
nginx -c /etc/nginx/nginx.conf #重啟nginx服務
因為我們之前配置了兩個應用server1
和server2
袱贮,所以這里我們只修改端口號就可以了体啰。然后在阿里云安全組設置允許9000端口通過就可以了。
3.多域名配置
多端口配置虛擬主機配置完成柒莉,最后來配置多域名枕屉。自己去阿里云域名購買域名(域名是要備案的),小菜這里有兩個域名walidream.com
和yagm.xin
搀擂,正好可以用來演示。
cd /etc/nginx/conf.d
vim server1.conf
listen 80;
server_name walidream.com;
將server1.conf配置好后喷市,修改同樣的key
vim server2.conf
listen 80;
server_name yagm.xin;
修改完成后
nginx -s stop -c /etc/nginx/nginx.conf #停止nginx服務
nginx -c /etc/nginx/nginx.conf #重啟nginx服務
在瀏覽器中輸入域名查看