1、准备2台linux机器,安装好nginx服务,且配置基于域名的多虚拟主机,使用多个server{}标签
准备好如下两台机器,且安装配置好nginx服务,ip地址自由定义,现在nat或者桥接都行
保证负载均衡机器和两台节点服务器能够通信就可以
web01 192.168.178.125
web02 192.168.178.126
2、在2台新建的linux机器上,安装好nginx后,配置nginx.conf,创建编写好2个server{}标签即可
如下操作先修改第一个服务器web01
第一个基于域名的虚拟主机配置如下
server {
listen 80;
server_name mp3.yu.com;
charset utf-8;
location / {
root html/mp3;
index index.html index.htm;
}
}
第二个基于域名的虚拟主机配置如下
server {
listen 80;
server_name game.yu.com;
charset utf-8;
location / {
root html/game;
index index.html index.htm;
}
}
3、创建多域名的虚拟主机目录站点以及首页文件
4、做好本地的dns解析关系,修改/etc/hosts文件
vim /etc/hosts # 这里是直接修改linux本地的hosts,测试的访问效果
192.168.178.125 mp3.yu.com
192.168.178.125 game.yu.com
默认没有用域名做匹配的情况下,是自上往下的加载规则
如果直接访问ip地址的话,nginx默认自上而下加载多个server虚拟主机的匹配顺序
5、测试访问web01节点的多域名主机
curl mp3.yu.com
curl game.yu.com
浏览器访问得修改客户端的hosts文件
如果你想用windows的客户端,mac客户端的浏览器其访问该多域名虚拟主机,得修改客户端的hosts文件
6、再来同样的配置node02机器,实现多域名的虚拟主机站点
因为这是基于负载均衡的实验准备,我们将两个web节点,保持一致,因此我们还是选用2个域名
192.168.178.126 mp3.yu.com
192.168.178.126 game.yu.com
修改配置文件
server {
listen 80;
server_name mp3.yu.com;
charset utf-8;
location / {
root html/mp3;
index index.html index.htm;
}
}
server {
listen 80;
server_name game.yu.com;
charset utf-8;
location / {
root html/game;
index index.html index.htm;
}
}
8、创建web02上的两个域名的站点资料
[root@web02 html]# echo "mp3.yu.com web02" > ./mp3/index.html
[root@web02 html]# echo "game.yu.com web02" > ./game/index.html
9、修改hosts文件进行解析
vim /etc/hosts
192.168.178.126 mp3.yu.com
192.168.178.126 game.yu.com
10、测试多虚拟主机的访问
curl mp3.yu.com
curl game.yu.com
注意你的机器上,安装了几个nginx,修改和访问的是否一致
网友评论