在 Tomcat 上配置虚拟主机
、Tomcat
服务器的server.xml文件
(1)Tomcat 组件
Tomcat服务器是由一系列可配置的组件构成,其中核心组件是 Catalina Servlet 容器,它是所有其他 Tomcat 组件的顶层容器。Tomcat 的组件可以在 <CATALINA_HOME>/conf/server.xml 文件中进行配置,每个 Tomcat 组件在 server.xml 文件中对应一种配置元素。
(2)Tomcat 组件之间的关系
以下代码以 XML 的形式展示了各种 Tomcat 组件之间的关系:
<Server>
<Service>
<Connector />
<Engine>
<Host>
<Context>
</Context>
</Host>
</Engine>
</Service>
</Server>
(3)各个Tomcat 组件的说明
在以上 XML 代码中,每个元素都代表一种 Tomcat 组件。这些元素可分 4 类:
l 顶层类元素:主要包括<Server> 元素和 <Service> 元素,他们位于整个配置文件的顶层。
l 连接器类元素:代表了介于客户与服务之间的通信接口,负责将客户的请求发送给服务器,并将服务器的响应结果传递给客户。
l 容器类元素:代表处理客户请求并生成响应结果的组件,有 3 种容器类元素,它们是 Engine、Host 和 Context。Engine 组件为特定的 Service组件处理所有的客户请求,Host 组件为特定的虚拟主机处理所有客户请求,Context 组件为特定的 Web 应用处理所有客户请求。
l 嵌套类元素:嵌套类元素代表了可以加入到容器中的组件,如<Logger> 元素、<Valve> 元素和 <Realm> 元素。
(4)<Server> 元素
<Server> 元素代表整个Catalina Servlet 容器,它是 Tomcat 实例的顶层元素,由org.apache.catalina.Server 接口来定义。
<Server> 元素中可以包含一个或多个<Service> 元素,但 <Server> 元素不能做为任何其他元素的子元素。
(5)<Service> 元素
<Service> 元素由org.apache.catalina.Service 接口来定义,它包含一个<Engine> 元素,以及一个或多个 <Connector> 元素,这些<Connector> 元素共享同一个 <Engine> 元素。
(6)<Connector> 元素
<Connector> 元素由org.apache.catalina.Connector 接口来定义。<Connector> 元素代表和客户程序实际交互的组件,它负责接受客户请求,以及向客户返回响应结果。
(7)<Engine> 元素
<Engine> 元素由org.apache.catalina.Engine 接口来定义。每个 <Service> 元素只能包含一个<Engine> 元素。<Engine> 元素处理在同一个 <Service> 元素中所有<Connector> 元素接受到的客户请求。
<Engine> 元素可包括如下子元素:
<Loggor>
<Realm>
<Valve>
<Host>
(8)<Host> 元素
<Host> 元素由org.apache.catalina.Host 接口来定义。一个 <Engine> 元素中可以包含多个<Host> 元素。每个 <Host> 元素定义了一个虚拟主机,他可以包含一个或多个 Web 应用。
<Host>元素可包括如下子元素:
<Loggor>
<Realm>
<Valve>
<Context>
(9)<Context> 元素
<Context> 元素由org.apache.catalina.Context 接口来定义。<Context> 元素是使用最频繁的元素。每个<Context> 元素代表运行在虚拟主机上的单个 Web 应用。一个<Host> 元素中可以包含多个 <Context> 元素。
<Context> 元素可包括如下子元素:
<Loggor>
<Realm>
<Valve>
<Resource>
<ResourceParams>
、为主机配置域名
(1)编辑C:\WINNT\system32\drivers\etc下的hosts文件,在其中增加对本机IP地址的映射的域名
(2)本例为
127.0.0.1 www.sina.com
(3)保存该文件
、修改Tomcat下的C:\jakarta-tomcat-5.0.19\conf\server.xml文件以增加一个主机Host的设置
Host标记是用来配置虚拟主机的,就是可以多个域名指向一个tomcat,<context>是Host标记的子元素吧,表示一个虚拟目录,它主要有两个属性,path就相当于虚拟目录名字,而 docbase则是具体的文件位置。
<Hostname="www.sina.com" debug="0" appBase="webapps" unpackWARs="true"autoDeploy="true" xmlValidation="false"xmlNamespaceAware="false">
<Contextpath="" docBase="ROOT" debug="0" />
</Host>
注意:
(1)可以将Tomcat自己带的localhost主机的Host的整个设置全部拷贝,然后将“localhost”改名为www.sina.com即可以。
(2)必须保证在<Host></Host>之间至少有一个<Context path="" docBase="ROOT"debug="0" />的根Web应用程序的设置项目存在。
(3)可以根据应用的需要,在<Host></Host>之间设置其它的基于该主机名称下的其它Web应用程序的<Context>设置。
、启动Tomcat后再浏览本Web应用
输入http://www.sina.com:8080/WebMis/index.jsp
、本例也可以以localhost缺省的主机名称来访问
http://localhost:8080/WebMis/index.jsp
在 Tomcat 上配置虚拟主机的更多相关文章
- 在tomcat6.5+上配置虚拟主机
一 准备(必须配置,否则不能解析域名到ip) 我们将配置两台虚拟主机,假设域名分别为 www.test1.com www.test2.com 为了测试方便,请在客户机的: Win2K://WINNT/ ...
- linux上nginx上配置虚拟主机的相关配置
1.配置主配置: nginx/conf/nginx.conf 2.虚拟主机配置:nginx/conf/extra/learn.weixin.com.conf 配置完后,重启服务器!
- tomcat配置虚拟主机
在眼下,非常多server都是一台server对外能够訪问非常多个javaEE的项目,这样的实现方式就须要在tomcat里面配置虚拟主机了!以下就说说怎样配置虚拟主机: 找到tomcat的安装文件夹, ...
- Tomcat配置虚拟主机后的登录验证码问题
先描述一下问题现象,在本地测试运行一个java web网站,一切正常.但把网站部署到Linux服务器上后,发现登录出了问题,提示验证码输入不正确.登录时需要输入验证码,而验证码的原值是先存入sessi ...
- Tomcat 配置WEB虚拟映射 及 配置虚拟主机
Tomcat 配置WEB虚拟映射 及 配置虚拟主机 配置WEB虚拟映射文件夹有三种方法例如以下: 第一(要重新启动server的): 打开路径 Tomcat 6.0\conf 下的 server.x ...
- CentOS 5上Apache配置虚拟主机范例
昨天实践了下在CentOS 5上通过Apache直接配置虚拟主机,服务器没有安装面板软件,所以只能通过SSH远程连接操作了.Apache安装在/etc/httpd目录下,这个即是Apache的根目录, ...
- mac 上 mamp 配置虚拟主机 具体过程 ?
https://www.zhihu.com/question/32320396 mac 上 mamp 配置虚拟主机 具体过程 ? 按照哪些配置什么的 都搞好了 但是还不好 配置的主机 制定的目录 还是 ...
- javaweb学习总结十七(web应用组织结构、web.xml作用以及配置虚拟主机搭建网站)
一:web应用组织结构 1:web应用组成结构 2:安装web组成机构手动创建一个web应用程序目录 a:在webapps下创建目录web b:在web目录下创建html.jsp.css.js.WEB ...
- Nginx安装、配置虚拟主机、反向代理、负载均衡
1. nginx安装 下载nginx: 官方网站: http://nginx.org/ 使用的版本是1.8.0版本. Nginx提供的源码. 1.1. 要求的安装环境 1.需要安装gcc的环境.y ...
随机推荐
- easyHOOK socket send recv
代码比较简单,就不做注释了. 包含一个sockethookinject.DLL 和sockethook.exe 有一点不清楚, SetExclusiveACL可以添加当前线程的hook, 但是eas ...
- 使用Python实现的杨辉三角
def triangel(): print ' '*(20*3)+str(1) #定义起始两行 print ' '*(19*3)+str(1)+' '*5+str(1) for i in range( ...
- Qt 地址薄 (二) 添加地址
在上一篇 Qt 地址薄 (一) 界面设计 中,主要是实现了地址簿的界面,使用布局管理器进行元素的布局,并解释了"子类化" 和"所有权"的概念. 本篇将在上面的基 ...
- Java学习笔记21---内部类之对成员内部类的补充说明(二)
上篇文章--笔记20补充说明了前四点,这里接着来说剩下的两点. 要点如下: 5.访问权限修饰符可以修饰成员内部类 1).访问权限修饰符对内部类的访问限制与外部类的一般成员遵循一样的规则,具体请参考笔记 ...
- js最常用正则表达式集合
常用正则表达式合集:验证数字:^[0-9]*$验证n位的数字:^\d{n}$验证至少n位数字:^\d{n,}$验证m-n位的数字:^\d{m,n}$验证零和非零开头的数字:^(0|[1-9][0-9] ...
- 用Token令牌维护微服务之间的通信安全的实现
在微服务架构中,如果忽略服务的安全性,任由接口暴露在网络中,一旦遭受攻击后果是不可想象的. 保护微服务键安全的常见方案有:1.JWT令牌(token) 2.双向SSL 3.OAuth 2.0 等 本文 ...
- Android Studio | 详细安装教程
Windows和Mac系统下的安装教程差不多,需要注意的是确保系统中已经安装了JDK,并且JDK版本为1.7或1.7以上版本,如果没有,请自行更新下载安装,地址如下: Java SE Develop ...
- 使用 GStreamer appsrc 等插件实现视频音频混流,录制和推流
目前在做的在线直播教室,需要将老师分享的屏幕和老师的声音.学生的声音录制为一个视频文件,以便学生上课后还可以再看回放. 直播服务我们采用的是腾讯的视频服务,有现成的 SDK 可以用.但 SDK 自带的 ...
- webpack学习之路
当自己在学习webpack的时候,在网上发现中文的很详细的教程很少,于是便想将自己学习webpack的笔记记录整理下来,便有了这篇文章,希望对大家有所帮助,如果有错误,欢迎大家指出. 在我们开始之前 ...
- Java DB 访问之(四) spring mvc 组合mybatis
说明 本项目采用 maven 结构,主要演示了 spring mvc + mybatis,controller 获取数据后以json 格式返回数据. 项目结构 包依赖 与说明 pom文件: <p ...