虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主机,每个虚拟主机可以独立对外提供 www 服务,这样就可以实现一台主机对外提供多个 web 服务,每个虚拟主机之间是独立的,互不影响的。Tomcat作为目前比较流行的Web 应用服务器,学会配置Tomcat虚拟主机是我们学习使用Tomcat的重要一课。
在Tomcat的配置文件 server.xml 中, 元素代表虚拟主机,在同一个 元素下可以配置多个虚拟主机。例如,有两个公司的 Web 应用都发布在同一个 Tomcat 服务器上,可以为每家公司分别创建一个虚拟主机,它们的虚拟主机名分别为:
尽管两个虚拟主机实际上对应同一个主机,但是当客户端通过以上两个不同的虚拟主机名访问 Web 应用时,客户端会感觉这两个应用分别拥有独立的主机。此外,还可以为虚拟主机建立别名,例如,如果希望客户端访问 www.wkcto.com 或wkcto.com 都能对应到同一个Web应用,那么可以把wkcto.com作为虚拟主机的别名来处理。
下面介绍配置Tomcat虚拟主机的具体步骤。
使用www.wkcto.com域名访问的页面根路径为/usr/local/tomcat/wkcto/base
使用www.wkcto1.com域名访问的页面根路径为/usr/local/tomcat/wkcto1/base
1. 修改server.xml配置文件,创建虚拟主机
[root@web1 ~]# vim /usr/local/tomcat/conf/server.xml
...
wkcto.com" appBase="wkcto" unpackWARS="true" autoDeploy="true">
wkcto1.com" appBase="wkcto1" unpackWARS="true" autoDeploy="true">
2. 创建虚拟主机对应的页面根路径
[root@web1 ~]# mkdir -p /usr/local/tomcat/{wkcto,wkcto1}/base
[root@web1 ~]# echo "we are AAA" > /usr/local/tomcat/wkcto/base/index.html
[root@web1 ~]# echo "we are BBB" > /usr/local/tomcat/wkcto1/base/index.html
3. 重启Tomcat服务器
[root@web1 ~]# /usr/local/tomcat/bin/shutdown.sh
[root@web1 ~]# /usr/local/tomcat/bin/startup.sh
4. 客户端设置host文件解析域名,并测试页面
[root@client ~]# vim /etc/hosts
...
192.168.2.100 www.wkcto.com www.wkcto1.com
[root@client ~]# firefox http://www.wkcto.com:8080/ //访问域名
[root@client ~]# firefox http://www.wkcto1.com:8080/ //访问域名
5. 使用docBase参数可以修改默认网站首页路径. 假如,修改www.wkcto1.com的默认网站首页路径,可以这样做:
[root@web1 ~]# vim /usr/local/tomcat/conf/server.xml
...
wkcto.com" appBase="wkcto" unpackWARS="true" autoDeploy="true">
wkcto1.com" appBase="wkcto1" unpackWARS="true" autoDeploy="true">
//定义首页目录为default
...
[root@web1 ~]# mkdir /usr/local/tomcat/wkcto1/default
[root@web1 ~]# echo "we are default page" > /usr/local/tomcat/wkcto1/default/index.html
[root@web1 ~]# /usr/local/tomcat/bin/shutdown.sh
[root@web1 ~]# /usr/local/tomcat/bin/startup.sh
6.Tomcat虚拟主机处理http请求
用户发送请求到web服务器,该请求会被正在监听的Connector连接器接收,并把该请求交给Service下的Engine来处理,并等待Engine处理的结果。Engine获得请求后会根据请求的主机信息来匹配相应的Host主机,Host主机会根据请求的路径匹配对应的Context,Context web应用匹配上之后就构建request、response请求对象,调用指定的Servlet来处理请求。请求处理完成后会将response对象返回给Host主机,Host主机将response对象返回给Engine引擎,Engine再将response对象返回给Connector链接器,最后Connector连接器将response返回给浏览器。
Tomcat是开发和调试JSP 程序的首选,而且作为免费的开放源代码的Web 应用服务器,其在广大开发人员中被广泛使用。想学习更多关于Tomcat的知识和使用方法可以观看本站的Tomcat9的配置与使用Tomcat9的配置与使用,相信用不了多久你也能熟练使用Tomcat。
达芬奇09-04 11:00
军哥07-29 17:02
Code大师09-01 16:01
Code大师09-04 10:18
蛙课视频小助手08-04 16:45