一:Tomcat虚拟主机
虚拟主机用于在一台物理机上搭建多个web站点,每个web站点独立运行,互不干扰,这些站点就是"虚拟主机"。
1:基于域名的虚拟主机
多个域名解析到同一个IP地址,在WEB服务器里添加多个站点,每个站点绑定一个域名。HTTP协议请求里包含了域名信息,当wEB服务器收到访问请求时,就可以根据不同的域名来访问不同的网站。
《1》:rz 上传Tomcat软件包
《2》:tar xf apache-tomcat-8.5.40.tar.gz 解压软件包
《3》:mv apache-tomcat-8.5.40 /usr/local/tomcat 移动软件位置
《4》:/usr/local/tomcat/bin/startup.sh 启动服务
《5》:访问
《6》:vim /etc/hosts 编辑hosts文件
《7》:写入:
192.168.100.20 www.a.com
192.168.100.30 www.b.com
《8》:cd /usr/local/tomcat/conf/ 切换目录路劲
《9》:cp server.xml server.xml.bak 拷贝
《10》:vim server.xml 编辑主配置文件
《11》:修改和写入:
<Host name="www.a.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context docBase="/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="/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>
《12》:mkdir /web/{a,b} 创建a,b,目录,
《13》:vim /web/a/index.html
《14》:写入:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP a page</title>
</head>
<body>
<% out.println("Welcome to test site,http://www.a.com") ;%>
</body>
</html>
《15》:cp /web/a/index.html /web/b/ 复制网页给b
《16》:vim /web/b/index.html 编辑文件
《17》:修改
《18》:../bin/shutdown.sh 关闭服务
《19》:../bin/startup.sh 启动服务
《20》:修改本机的hosts文件
《21》:访问 www.a.com:8080
《22》:访问 www.b.com:8080
2:基于端口的虚拟主机
主机只拥有一个IP地址,通过不同的端口实现不同WEB站点的访问。在server.xml 中设置两个service组件)
《1》:vim /usr/local/tomcat/conf/server.xml 编辑主配置文件
《2》:从<Service name="Catalina">删除 ,留下以下内容即可
《3》:set nu 显示行号, 52,72 co 73 复制53行到72行
《4》:catalina 1的内容如下
<Service name="Catalina1">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<Host name="www.a.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context docBase="/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>
</Engine>
</Service>
《5》:Catalina 2 的内容如下:
<Service name="Catalina2">
<Connector port="8090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<Host name="www.a.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context docBase="/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>
</Engine>
</Service>
《6》:/usr/local/tomcat/bin/shutdown.sh 关闭服务
《7》:/usr/local/tomcat/bin/startup.sh 启动服务
《8》:访问