最近组长要求我在一台服务器上面部署多个项目,这就需要在Tomcat里面配置虚拟主机了。首先来看下tomcat/conf/server.xml 这个文件

  1. Server.xml

<?xml version='1.0' encoding='utf-8'?><Server port="8005" shutdown="SHUTDOWN"><Listener className="org.apache.catalina.startup.VersionLoggerListener"/><Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on"/><Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/><Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/><Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/><GlobalNamingResources><Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase"description="User database that can be updated and saved"factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml"/></GlobalNamingResources><Service name="Catalina"><!-- 配置tomcat监听浏览器访问端口,http协议就会走8080端口,https协议就会转发到8443端口 --><Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/><!-- 与apache服务器整合时使用的端口,使用ajp协议 --><Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/><!-- Engine 标签是一个引擎,里面至少要有一个Host标签 --><Engine name="Catalina" defaultHost="www.aaa.com"><Realm className="org.apache.catalina.realm.LockOutRealm"><Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/></Realm><!-- 第一个虚拟主机 --><Host name="www.aaa.com" appBase="webapps1" unpackWARs="true" autoDeploy="true"><Context path="/" docBase="signature" reloadable="true"/></Host><!-- 第二个虚拟主机 --><Host name="www.bbb.com" appBase="webapps2" unpackWARs="true" autoDeploy="true"><Context path="/" docBase="signature" reloadable="true"/></Host></Engine></Service></Server>

上面我成功配置了两个虚拟主机,下面看下这个配置文件的说明

  1. 属性说明

  • path 表示此web应用程序的url的前缀(http://localhost:8080/path/***)

  • docBase 表示应用程序的路径或者是WAR文件存放的路径

  • reloadable 如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重启tomcat的情况下改变应用程序

  • name 指定主机名

  • appBase 表示表示应用程序的基本目录,即存放应用程序的目录

  • unpackWARs 如果为true,则tomcat会自动将WAR文件解压,否则不解压,直接从WAR文件中运行应用程序

  • defaultHost:指定缺省的处理请求的主机名,它至少与其中的一个host元素的name属性值是一样的

  • port 指定一个端口,这个端口负责监听关闭tomcat的请求

  • shutdown 指定向端口发送的命令字符串

  • Server:

  • Service:指定service的名字

  • Connector:表示客户端和service之间的连接

  • Engine:指定service中的请求处理机,接受和处理来自Connector的请求

  • Host:表示一个虚拟主机 (如果要配置多个就像上面那样配置多个Host)

  • Context:

修改hosts如果我们现在直接访问www.aaa.com这个网址,浏览器是无法解析的(或者跳转到互联网上的其他地址),不会访问到我们部署的地址。所以我们需要修改hosts文件。Windows:C:\Windows\System32\drivers\etc\hosts我们指定的hostName是www.aaa.com,www.bbb.com,那么hosts文件就需要添加以下两条记录,这样就可以访问到我们部署的项目了。127.0.0.1   www.aaa.com127.0.0.1   www.bbb.com可怜的我到现在才知道hosts的作用...修改hosts文件的原理,hosts Wiki成功访问

转载于:https://blog.51cto.com/12879490/1922312

Tomcat虚拟主机配置相关推荐

  1. Tomcat详解(九)——Tomcat虚拟主机配置实战

    今天继续给大家介绍Linux运维相关知识,本文主要内容是Tomcat虚拟主机配置实战. 一.虚拟主机目录配置 首先,我们给Tomcat的两个虚拟主机创建根目录,执行命令: mkdir -p /var/ ...

  2. tomcat 虚拟主机配置实例

    jsp+tomcat 虚拟主机配置 第一步 打开Tomcat\conf  下面的 server.xml 本例 域名  jsp.com     源码文件夹放置在d:\jsp 文件夹 <Host n ...

  3. tomcat 虚拟主机配置

    虚拟主机概念:一台物理计算机上运行多个web应用,每个应用独立运行,拥有自己的工作空间,互不干扰,对于这些应用来说就是虚拟机,虚拟主机可以节省资源,优化管理,便于后期web服务器的维护.升级等. 虚拟 ...

  4. Tomcat简介、服务部署、虚拟主机配置及相关配置文件参数优化

    Tomcat简介.服务部署.虚拟主机配置及相关配置文件参数优化 一.Tomcat 简介 核心的组件 二.Tomcat 服务部署安装 1.关闭防火墙,将安装 Tomcat 所需软件包传到/opt目录下 ...

  5. Tomcat 服务器的部署与虚拟主机配置

    目录 前言 一.Tomcat服务器 1.核心组件 2.Tomcat 处理请求过程 二.Tomcat部署 1.安装JDK,配置JAVA环境 2.安装配置Tomcat 3.主要目录说明 三.Tomcat优 ...

  6. Tomcat服务(部署、虚拟主机配置、优化)

    目录 一.介绍tomcat服务器 1. servlet 2.JSP 3.tomcat核心组件 4.Tomcat处理请求过程 1.Tomcat 功能组件结构 二.tomcat数据流向 三.部署Tomca ...

  7. Tomcat虚拟主机

    Tomcat虚拟主机配置示例 有3个web项目,都已打成了war包,分别是aaa.war.bbb.war.ccc.war. 打算配置3个tomcat虚拟主机,分别绑定域名aaa.com.bbb.com ...

  8. 6月27日任务 配置Tomcat监听80端口、配置Tomcat虚拟主机、Tomcat日志

    2019独角兽企业重金招聘Python工程师标准>>> 16.4 配置Tomcat监听80端口 1. vim /usr/local/tomcat/conf/server.xml Co ...

  9. 配置Tomcat监听80端口 配置Tomcat虚拟主机 Tomcat日志

    配置Tomcat监听80端口 • vim /usr/local/tomcat/conf/server.xml Connector port="8080" protocol=&quo ...

最新文章

  1. python 均值漂移
  2. qsql 关联_(十八)链接数据库,QSqlTableModel
  3. java 编写线程公共类_002-java多线程工具类
  4. 最新综述:自动驾驶中的多模态三维目标检测
  5. [BUUCTF-pwn]——not_the_same_3dsctf_2016
  6. 平面设计中的网格系统pdf_平面设计基础知识
  7. ansys如何删除线_PR学习之旅:PR预设如何导入,保存和效果重命名呢?诀窍很简单...
  8. java 构造函数 和 构造代码块
  9. POJ2083-Fractal
  10. 【python实现网络爬虫21】天眼查企业数据获取
  11. Linux内核notifier机制通知链
  12. python 会计分录模板_财务月末结账会计分录
  13. 面试续与如何做自己的职业规划
  14. 数据挖掘技术的来源、历史、研究内容及常用技术
  15. 本人机械专业研究生,研一暑假开始正式接触深度学习相关内容,想通过写文章记录以及分享下学习的历程,让大家可以避免坑以及记录下自己成长的过程。今天是第一天,安装opencv包出现的问题。
  16. 混合 blending
  17. 反证法(归谬法)及其在算法设计时的应用
  18. AMBA 总线系列 之 1.概述
  19. idea如何导入jar包(详细)
  20. 关于visual studio2010出现中文乱码以及复制代码到word注释中文乱码的解决方案

热门文章

  1. 中非谋定农业合作 -农业大健康·万祥军:提供农业解决方案
  2. Linux 认证考试:精解Linux find命令的使用linuxfindnam
  3. 安卓平分位置layout_weight学习记录
  4. 【LeetCode】【数组归并】Merge k Sorted Lists
  5. python框架django的数据库的正向生成和反向生成
  6. Paxos、ZAB、RAFT协议
  7. Oracle 11g+Windows10 x64安装、配置过程记录
  8. python--open用法
  9. POJ 2785 4 Values whose Sum is 0
  10. 同步方法 sleep和wait 线程同步的方法