Tomcat虚拟主机
与apache的虚拟主机原理一致,不过多解释
1、修改Tomcat的server.xml配置文件
切换至 server.xml 配置文件所在目录:
[root@localhost ~]# cd /usr/local/tomcat/conf/
测试环境对 server.xml 配置文件进行备份:
[root@localhost conf]# cp server.xml{,.bak}
修改 server.xml 配置文件:
[root@localhost conf]# vim server.xml
<Host name="www.a.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context docBase="../webapps/web/a" path="" reloadable="flase" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
<Host name="www.b.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context docBase="../webapps/web/b" path="" reloadable="flase" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
2、虚拟主机目录及文件准备
切换至Tomcat的站点目录(webapps):
[root@localhost conf]cd ../webapps/
创建虚拟主机所对应的两个网站主目录:
[root@localhost webapps]# mkdir -p web/{a,b}
通过JSP编写两个虚拟主机网站的主页文件:
[root@localhost webapps]# vim /web/a/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP a page</title>
</head>
<body>
<% out.println("Welocome to test site,http://www.a.com");%>
</body>
</html>
[root@localhost webapps]# vim /web/b/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP a page</title>
</head>
<body>
<% out.println("Welocome to test site,http://www.b.com");%>
</body>
</html>
重启Tomcat:
[root@localhost ~]# systemctl restart tomcat.service
3、测试
配置hosts文件解析域名(没有配置DNS服务):
[root@localhost ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.25.137 www.a.com
192.168.25.137 www.b.com
测试
正常测试(使用curl):
[root@localhost ~]# curl http:// www.a.com:8080
curl: (6) Could not resolve host: http; Unknown error
<html>
<head>
<title>JSP a page</title>
</head>
<body>
Welocome to test site,http://www.a.com
</body>
</html>
[root@localhost ~]# curl http://www.b.com:8080
<html>
<head>
<title>JSP a page</title>
</head>
<body>
Welocome to test site,http://www.b.com
</body>
</html>
#可以看到访问成功
浏览器测试:
安装浏览器elinks:
[root@localhost ~]# yum install elinks -y
[root@localhost ~]# elinks --dump http://www.a.com:8080
Welocome to test site,http://www.a.com
[root@localhost ~]# elinks --dump http://www.b.com:8080
Welocome to test site,http://www.b.com
#可以看到访问成功
这里就不进行window测试,有需要自行测试