先停止tomcat服务

1.进入apache-tomcat-7.0.68/conf/Catalina/localhost(如果之前还都没有启动过tomcat,是不会有此目录的,先启动一次再关闭,会自动生成此目录)

2.新建admin.xml(admin为项目名称,要对应)

admin.xml内容:

<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" debug="0"docBase="/home/jenkins/webapps/admin"reloadable="false">
</Context>

3.把项目移动到 /home/jenkins/webapps

项目完整目录为:/home/jenkins/webapps/admin

但很多时候,我们希望不需要项目名称,直接输入域名就可以访问了,做法是:

(1).为了保险起见,删掉tomcat服务器中的webapps目录下的ROOT文件夹。

(2).将xml文件名改为ROOT(ROOT.xml)

项目访问路径是以xml文件名为准的(ROOT会自动忽略)。

4.启动tomcat

下面介绍怎么使用这种方法进行域名配置,一般我们会遇到这种情况,客户会给我们一个域名,让这个域名可以访问前端网站、后端管理网站和api接口,那么我们可以把前端网站配置成域名直接访问,然后其他两个配置两个不同的域名后缀(本例使用admin和ser)即可。可以满足需求。下面以域名 www.test007.com 进行配置。

1.配置server.xml

修改访问端口为80

    <Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />

添加一个<Host>并配置域名到新<Host>中,后面如果更换域名直接修改name的属性即可。

      <Host name="www.test007.com"  appBase="webapps" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" />
</Host>

2.为了保险起见,删掉tomcat服务器中的webapps目录下的ROOT文件夹,启动tomcat、停止tomcat

3.进入 conf\Catalina\www.test007.com 目录, www.test007.com目录为上面的域名

4.新建ROOT.xml(前端网站配置文件)并添加如下内容,docBase的属性根据自己实际前端网站项目路径修改

<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="C:\Users\Administrator\Desktop\project" reloadable="false" >
</Context>

5.新建admin.xml(后端管理网站配置文件)并添加如下内容,docBase的属性根据自己实际后端管理网站项目路径修改

<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="C:\Users\Administrator\Desktop\project-admin" reloadable="false" >
</Context>

5.新建ser.xml(后端管理网站配置文件)并添加如下内容,docBase的属性根据自己实际服务端接口项目路径修改

<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="C:\Users\Administrator\Desktop\project-api" reloadable="false" >
</Context>

6.启动tomcat, 三端的完整域名为:前端 http://www.test007.com ; 后端管理 http://www.test007.com/admin ; api接口 http://www.test007.com/ser

更简单的方法新增的<Host>如下即可:

        <Host name="www.test007.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="C:\Users\Administrator\Desktop\project" reloadable="true" crossContext="true" />
<Context path="admin" docBase="C:\Users\Administrator\Desktop\project-admin" reloadable="true" crossContext="true" />
<Context path="ser" docBase="C:\Users\Administrator\Desktop\project-api" reloadable="true" crossContext="true" />
</Host>

注1:xmlValidation="false" xmlNamespaceAware="false"

加上这两个属性就可以在
<Context path="" docBase="" reloadable="true" />
中的docBase里直接配置项目名称,也就是webapps下的你的war包解压的根目录名称,而不用配置绝对路径,没有这两个属性配置相对路径无法将该项目设置为默认项目,访问localhost仍然是tomcat 首页,亲测有效。

注2:

我们先看appBase,这个目录表示:
1 这个目录下面的子目录将自动被部署为应用。
2 这个目录下面的.war文件将被自动解压缩并部署为应用
而docBase只是指向了你某个应用的目录,这个可以和appBase没有任何关系。
总结:
如果你想自己指定路径,那么应该在docBase里面
如果你想简单,那么直接把他们复制到appBase下面就行了

如果想war包自动解压部署【可以只更新war不重启tomcat】那可以这么配置【其中(/Users/weishengbin/0test/pro)为应用总目录,同tomcat中的webapps目录】:

而(/Users/weishengbin/0test/pro/admin)为应用目录。

<Host name="localhost" appBase="/Users/weishengbin/0test/pro" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/Users/weishengbin/0test/pro/admin" reloadable="true" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" /> </Host>

Tomcat 配置 项目 到tomcat目录外面 和 域名绑定访问(api接口、前端网站、后台管理网站)的更多相关文章

  1. tomcat 中项目配置文件统一目录设置

    在tomcat 安装目录中 conf 下的  catalina.properties 文件中 有个  shared.loader= 配置为   shared.loader="${catali ...

  2. tomcat配置项目虚拟路径

    tomcat版本:apache-tomcat-7.0.42 参考:http://blog.csdn.net/pangdingshan/article/details/7214786 一.虚拟根目录 1 ...

  3. Tomcat配置(二):tomcat配置文件server.xml详解和部署简介

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  4. nginx配置一、二级域名、多域名对应(api接口、前端网站、后台管理网站)

    前提:安装好nginx,如果已经启动nginx,先停止,命令: ./usr/local/nginx/sbin/nginx -s stop 修改nginx配置 vi /usr/local/nginx/c ...

  5. Django项目:CMDB(服务器硬件资产自动采集系统)--03--03CMDB信息安全API接口交互认证

    #settings.py """ Django settings for AutoCmdb project. Generated by 'django-admin sta ...

  6. tomcat 配置项目

    tomcat\conf\Catalina\localhost      下面存在项目配置文件信息,emas.xml 表示你eclipse中有个emas项目, 还有其他的项目xml.

  7. 为tomcat配置项目必须的引擎文件

    1.如下图所示,红框圈出来的四个语音引擎文件是直接放在项目根目录下的,这样的话我们发布web应用的时候,项目并不能自动把这几个文件打包到tomcat中, 除非放到WebRoot文件夹下,但是这样的话项 ...

  8. tomcat 配置项目前缀(推荐方式四)

    一. 显示配置 Context 的 path   需要在 server.xml 文件中手动配置. <Host name="localhost" appBase="w ...

  9. tomcat 配置项目指定域名

    <Host name="www.xxx.com" appBase="D:/tomcat/webapps/web"> <alias>xxx ...

随机推荐

  1. js innerHTML 改变div内容的方法

    永远不知道你可以改变的内容,一个HTML元素?也许你要取代的文字段落中,以反映什么访客选定刚刚从下拉框中.通过操纵一个元素的innerHtml您可以变更您的文本和HTML多达你喜欢.改变文字inner ...

  2. 用Visual Studio Code写Node和调试代码

    介绍 vsc的宣传语是: 一个运行于 Mac OS X.Windows和 Linux 之上的,针对于编写现代 Web 和云应用的跨平台源代码编辑器. 按它说的,vsc特别适合来作为前端开发编辑器. 内 ...

  3. .NET Garbage-Collectors

    http://mattwarren.org/tags/#Garbage-Collectors https://github.com/dotnet/coreclr/issues https://lldb ...

  4. nyoj592 spiral grid

    spiral grid 时间限制:2000 ms  |  内存限制:65535 KB 难度:4   描述 Xiaod has recently discovered the grid named &q ...

  5. 游戏开发tips之RTTI(1)

    首先说明标题的含义,怎么感觉就和定义一种语言一样,需要有一个规约呢..... 标题定义如下:游戏开发tip之+内容+(总tips的第几篇) 扩展如下:内容(一,二,三.....) 新手可怜,大神每一句 ...

  6. singer页面点击歌手singer是跳转到singer-detail的设置

    1.创建components/singer-detail/singer-detail.vue 2.配置动态路由: { path: ':id', name:'singer-detail', compon ...

  7. Tomcat的URL中文乱码解决以及传输优化

    默认的tomcat容器如果直接使用get方式在url中传中文时,传到后台接收会是乱码. 乱码问题 原因: tomcat默认的在url传输时是用iso8859-1编码. 解决方案一: 在使用get传输参 ...

  8. 手动挡C1驾驶学车@长建驾校

    2015-11-01 下午取钱去长建驾校报名学车 4600(学费) + 100(暂住证) + 30(照片) + 10(体检) 2015-11-14 8:00-12:00 理论课2 光盘10  2015 ...

  9. 利用eclipse中的各种功能帮助你理解代码

    @菜单栏下面,工具栏,有一对黄色的箭头按钮,一个指向左边,一个指向右边,快捷键是Alt+Left/Alt+Right 功能是跳转到你刚刚编辑过的地方 这里的Left/Right指的是左右方向键,可以方 ...

  10. LeetCode: Median of Two Sorted Arrays 解题报告

    Median of Two Sorted Arrays There are two sorted arrays A and B of size m and n respectively. Find t ...