一、虚拟主机知识
关于虚拟主机,我已经写过多篇文章了(Nginx虚拟主机,Web虚拟主机),可以看到只要是搭建web运行环境,用到虚拟主机技术的情况还是很多的,做大的好处就是省钱,一台服务器能办到的事,我们就不花两台服务器的钱,除非这台服务器撑不住了.
Web虚拟主机搭建:https://blog.csdn.net/ck784101777/article/details/95725722
Nginx虚拟主机搭建:https://blog.csdn.net/ck784101777/article/details/98775059
做过Nginx和Web虚拟主机的实验的朋友,对虚拟主机的概念和使用应该是比较熟悉了,首先虚拟主机可以分为基于端口,域名,ip地址的三种虚拟机主机,无非就是一种多(端口,域名,ip)对一(服务器)的关系.不管用什么服务搭建Web网站,我们要做的事就是建立这种多对一的关系.
二、Tomcat部署虚拟主机
通过一个实验来体验Tomcat虚拟主机
实验要求:
- 实现两个基于域名的虚拟主机,域名分别为:www.a.com和 www.b.com
- 使用www.a.com域名访问的页面根路径为/usr/local/tomcat/a/ROOT
- 使用www.b.com域名访问的页面根路径为/usr/local/tomcat/b/ROOT
- 访问www.a.com/test时,页面自动跳转到/var/www/html目录下的页面
拓扑环境,首先配置ip
1.搭建Tomcat运行环境
Tomcat搭建方式:https://blog.csdn.net/ck784101777/article/details/99692765
2.修改Tomcat配置文件创建虚拟主机
- [root@web1 ROOT]#cat /usr/local/tomcat/conf/server.xml
- //找到<Service name="Catalina">这个Server 在其下添加两个Host
- <Host name="www.a.com" appBase="a" unpackWARS="true" autoDeploy="true">
- </Host>
- <Host name="www.b.com" appBase="b" unpackWARS="true" autoDeploy="true">
- </Host>
appBase:网页真实路径
unpackWARS:自动解压war包
autoDeploy:自动部署
3.创建虚拟主机的真实路径
- [root@web1 ~]# mkdir -p /usr/local/tomcat/{a,b}/ROOT //所有页面默认部署在ROOT下
- [root@web1 ~]# echo "AAA" > /usr/local/tomcat/a/ROOT/index.html
- [root@web1 ~]# echo "BBB" > /usr/local/tomcat/b/ROOT/index.html
4.重启
Tomcat没有重启方式,通过关机再启动
- [root@web1 ~]# /usr/local/tomcat/bin/shutdown.sh
- [root@web1 ~]# /usr/local/tomcat/bin/startup.sh
5.测试
用客户机进行测试
- [root@client ~]# vim /etc/hosts
- … …
- 192.168.2.100 www.a.com www.b.com
- [root@client ~]# firefox http://www.a.com:8080/ //注意访问的端口为8080
- [root@client ~]# firefox http://www.b.com:8080/
测试结果如下则证明搭建成功