利用虚拟主机,不用为每个要运行的网站提供一台单独的Nginx服务器或单独运行一组Nginx进程,虚拟主机提供了在同一台服务器,同一组 Nginx进程上运行多个网站的功能。跟Apache一样,Nginx也可以配置多种类型的虚拟主机,分别是基于IP的虚拟主机、基于域名的虚拟主机、基于端口的虚拟主机。
使用Nginx搭建虚拟主机服务器时,每个虚拟Web站点拥有独立的“serverf”配置段,各自监听的IP地址、端口号可以单独指定,当然网站名称也是不同的。
1.1 基于域名的虚拟主机
1.11 改测试系统的WIN10的映射文件host
1)修改host文件
修改windos客户机的C:\Windows\System32\drivers\etc\hosts文件,加入www.51xit.top和www.52xit.top这两个域名,它们都指向同一个服务器IP地址,用于实现不同的域名访问不同的虚拟主机。
20.0.0.24 www.lph.com www.dzg.com
2)开启nginx服务对域名进行初测试
无论是测试www.lph.com 还是www.dzg.com都是指向的服务器20.0.0.24的网站测试首页。
浏览器中访问:www.lph.com
浏览器中访问:www.dzg.com
后面要实现的是访问不同的域名可以访问到不同的网点。
1.12 各个网站的目录和测试首页
1
2
3
4
|
[root@localhost~] # mkdir -p /var/www/html/lph/ ####创建www.lph.com的根目录
[root@localhost~] # mkdir -p /var/www/html/dzg/ ####创建www.dzg.com的根目录
[root@localhost~] # echo "www.lph.com" >> /var/www/html/lph/index.html
[root@localhost~] # echo "www.dzg.com" >> /var/www/html/dzg/index.html
|
1.13 主配置文件
修改配置文件/usr/local/nginx/conf/nginx.conf,把配置文件中的server{}代码段全部去掉,加入2个新的server{}段,对应2个域名。
1)配置文件的修改
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
####省略####
server {
listen 80;
server_name www.lph.com;
charset utf-8;
access_log logs /www .lph.com.access.log;
location / {
root /var/www/html/lph ;
index index.html index.htm;
}
error_page 500 502 503 504 /50x .html;
location = /50x .html {
root html;
}
}
server {
listen 80;
server_name www.dzg.com;
charset utf-8;
access_log logs /www .dzg.com.access.log;
location / {
root /var/www/html/dzg ;
index index.html index.htm;
}
error_page 500 502 503 504 /50x .html;
location = /50x .html {
root html;
}
}
####省略####
|
2)客户机测试
访问www.lph.com
访问www.dzg.com
1.2 基于端口的虚拟主机
只需要一个IP地址的不同端口实现访问不同的网点
1.21 配置文件的修改
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
server {
listen 20.0.0.24:80;
server_name www.lph.com;
charset utf-8;
access_log logs /www .lph.com.access.log;
location / {
root /var/www/html/lph ;
index index.html index.htm;
}
error_page 500 502 503 504 /50x .html;
location = /50x .html {
root html;
}
}
server {
listen 20.0.0.24:8080;
server_name www.dzg.com;
charset utf-8;
access_log logs /www .dzg8080.com.access.log;
location / {
root /var/www/html/dzg ;
index index.html index.htm;
}
error_page 500 502 503 504 /50x .html;
location = /50x .html {
root html;
}
}
|
1.22 客户机的测试
访问www.lph.com:80和访问20.0.0.24:80
访问www.dzg.com:8080及访问20.0.0.24:8080
1.3 基于不同IP的虚拟主机
主机配置两个IP地址
20.0.0.24 192.168.100.24
1.31 添加一张网卡并设置IP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
[root@localhost ~] # nmcli connection #复制新增网卡的地址
[root@localhost ~] # cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts] # cp ifcfg-ens33 ifcfg-ens36
[root@localhost network-scripts] # vi ifcfg-ens36
NAME=ens36
UUID=ee2dccf4-cc4a-34bc-9cea-37e7d528cd27 #粘贴新增网卡的地址
DEVICE=ens36
ONBOOT= yes
IPADDR=192.168.100.26
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
[root@localhost ~] # systemctl restart network
[root@localhost ~] # ifdown ens36
[root@localhost ~] # ifup ens36
#######打开电脑cmd ping一下 ping通继续
|
1.32 修改客户机的host 文件
20.0.0.0.24 www.lph.com
192.168.100.24 www.dzg.com
1.33 修改配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
server {
listen 20.0.0.24:80;
server_name www.lph.com;
charset utf-8;
access_log logs /www .lph.com.access.log;
location / {
root /var/www/html/lph ;
index index.html index.htm;
}
error_page 500 502 503 504 /50x .html;
location = /50x .html {
root html;
}
}
server {
listen 192.168.100.24:80;
server_name www.dzg.com;
charset utf-8;
access_log logs /www .dzg.com.access.log;
location / {
root /var/www/html/dzg ;
index index.html index.htm;
}
error_page 500 502 503 504 /50x .html;
location = /50x .html {
root html;
}
}
|
1.34 客户机测试
访问www.lph.com和访问20.0.0.24
访问www.dzg.com和访问192.168.100.24
到此这篇关于nginx基于域名,端口,不同IP的虚拟主机设置的实现的文章就介绍到这了,更多相关nginx 虚拟主机设置内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/weixin_48192495/article/details/108544946