主要是通过配置<Tomcat安装目录>/conf/server.xml文件

步骤: 
1、打开server.xml,在</Host>的上一行添加内容格式如下 
<Context path="" reloadable="true" docBase="<项目名>"/> 
如:

<Host name="www.abc.com" appBase="webapps" 
unpackWARs="true" autoDeploy="true" 
xmlValidation="false" xmlNamespaceAware="false">

<!-- SingleSignOn valve, share authentication between web applications 
Documentation at: /docs/config/valve.html --> 
<!-- 
<Valve className="org.apache.catalina.authenticator.SingleSignOn" /> 
-->

<!-- Access log processes all example. 
Documentation at: /docs/config/valve.html --> 
<!-- 
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" 
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> 
--> 
<Alias>www.123.org</Alias> 
<Alias>www.abc.com</Alias> 
<Context docBase="virgocloud" path="" reloadable="true"></Context> 
</Host> 
</Engine>

另:如果想要只输入IP或域名就可以访问的话,那就把Tomcat的端口设置为80(但需确认此端口有没有其它程序占用),修改如下:

<Connector port="80"  maxHttpHeaderSize="8192" 
    maxThreads="150" minSpareThreads="25" maxSpareThreads="75" 
    enableLookups="false" redirectPort="8443" acceptCount="100" 
    connectionTimeout="20000" disableUploadTimeout="true" />

注:通过上面的设置有一个问题就是项目会重复加载两次.

原因分析 
1.当为 Host 容器 设置了 appBase 属性时, Tomcat 会在启动时自动加载 appBase 指定目录下的所有合法工程;
2. 由于同时又通过 Context 的docBase 属性设置了Tomcat 默认工程, 所以,指定的 jkcm,virgocloud工程又会被加载一次 
基于以上两点,造成了 jkcms,virgocloud工程的重复加载。

解决办法 
1. 新建一个目录专门用于存放工程, 如:C:\virgocloud\software\apache-tomcat-7.0.57\deployproject

2. 将工程存放到以上目录下:即:C:\virgocloud\software\apache-tomcat-7.0.57\deployproject

3. 在 Context 容器中设置 docBase 属性, 如: 
<Context path="" docBase="C:\virgocloud\software\apache-tomcat-7.0.57\deployproject\jkcms" />

<Host name="www.abc.com" appBase="webapps" unpackWARs="true" autoDeploy="true"xmlValidation="false" xmlNamespaceAware="false"> 
<!-- SingleSignOn valve, share authentication between web applications 
Documentation at: /docs/config/valve.html --> 
<!-- 
<Valve className="org.apache.catalina.authenticator.SingleSignOn" /> 
--> 
<!-- Access log processes all example. 
Documentation at: /docs/config/valve.html --> 
<!-- 
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" 
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>

--> 
<Alias>www.123.org</Alias> 
<Alias>www.abc.com</Alias> 
<Context docBase="C:\virgocloud\software\apache-tomcat-7.0.57\deployproject\virgocloud" path=""reloadable="false"></Context> 
</Host> 
<Host name="cms.abc.com" appBase="webapps" unpackWARs="true" autoDeploy="true"xmlValidation="false" xmlNamespaceAware="false"> 
<!-- SingleSignOn valve, share authentication between web applications 
Documentation at: /docs/config/valve.html --> 
<!-- 
<Valve className="org.apache.catalina.authenticator.SingleSignOn" /> 
--> 
<!-- Access log processes all example. 
Documentation at: /docs/config/valve.html --> 
<!-- 
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" 
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> 
--> 
<Context docBase="C:\virgocloud\software\apache-tomcat-7.0.57\deployproject\jkcms" path=""reloadable="false"></Context> 
</Host>

至此问题解决,重启Tomcat服务器就可以通过不加项目名访问此项目. 
注意:记得把webapps目录下的原项目删除

转载:请注明www.virgocloud.com或www.xujin.org

(原创)项目部署-Tomcat设置默认访问项目及项目重复加载问题处理的更多相关文章

  1. eclipse项目配置tomcat后浏览器访问不到项目解决方案

    先把项目从tomcat溢出,并删除tomcat,然后再次导入 双击: 修改:

  2. tomcat配置根目录访问后,部署后第一次访问会出现tomcat的默认界面而非项目首页

    tomcat配置根目录访问后,部署后第一次访问会出现tomcat的默认界面而非项目首页,而重启后会正常,这个原因是因为在配置文件中有如下配置,造成项目加载两次 <Host name=" ...

  3. Tomcat设置默认启动项目及Java Web工程设置默认启动页面

    Tomcat设置默认启动项目 Tomcat设置默认启动项目,顾名思义,就是让可以在浏览器的地址栏中输入ip:8080,就能访问到我们的项目.具体操作如下: 1.打开tomcat的安装根目录,找到Tom ...

  4. Tomcat启动默认访问项目

    一般有两种可以实现:推荐使用这一种.更灵活 一般项目的编译项目都在Tomcat的webapps下,项目的访问路径一般为:http://localhost:8080/项目虚拟路径.但是Tomcat的默认 ...

  5. Tomcat设置默认启动项目

    Tomcat设置默认启动项目 Tomcat设置默认启动项目,顾名思义,就是让可以在浏览器的地址栏中输入ip:8080,就能访问到我们的项目.具体操作如下:     1.打开tomcat的安装根目录,找 ...

  6. 当web项目没有配置<welcome-file>index_1.jsp</welcome-file>默认标签启动tomcat后默认访问的页面是什么呢?

    当web项目没有配置index_1.jsp默认标签启动tomcat后默认访问的页面是什么呢? 结果我启动后居然默认打开了index.jsp页面 为什么呢?为什么会访问我的.indexjsp页面呢?不是 ...

  7. Eclipse将项目部署tomcat的webapps目录

      Eclipse将项目部署tomcat的webapps目录 >>>>>>>>>>>>>>>>>& ...

  8. tomcat设置默认启动项

     Tomcat设置默认启动项目 Tomcat设置默认启动项目,顾名思义,就是让可以在浏览器的地址栏中输入ip:8080,就能访问到我们的项目.具体操作如下:     1.打开tomcat的安装根目 ...

  9. (转)tomcat 修改默认访问项目名称和项目发布路径

    1.项目发布路径 <Host name="localhost" appBase="webapps" unpackWARs="true" ...

随机推荐

  1. scala 宏

    Scala开发团队正在将实验版宏指令加入到即将发行的2.10版中.Scala宏指令提供了编译时元编程的高级形式.Scala宏网站描述道: “宏指令显著简化了代码分析和代码生成,这使得它们成为处理大量现 ...

  2. mysql数据库使用

    C#操作Mysql数据库的存储过程,网址 DATEDIFF() 函数返回两个日期之间的天数. 语法 DATEDIFF(date1,date2) date1 和 date2 参数是合法的日期或日期/时间 ...

  3. ssh 密码登陆

    概要: 首先 自己生成秘钥 其次 用已经生成的秘钥 实现 用秘钥登陆的功能(在别的机器上部署的道理相同) 辅助: 登陆工具 Tera Term                  linux版本:cen ...

  4. 【Python②】python之首秀

       第一个python程序 再次说明:后面所有代码均为Python 3.3.2版本(运行环境:Windows7)编写. 安装配置好python后,我们先来写第一个python程序.打开IDLE (P ...

  5. 美化iTerm2

    一.下载iTerm2,启动 二.安装oh-my-zsh curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/insta ...

  6. DotNetBar for Windows Forms 12.2.0.7_冰河之刃重打包版原创发布-带官方示例程序版

    关于 DotNetBar for Windows Forms 12.2.0.7_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版-------------- ...

  7. Java中main函数只能调用同类中的静态方法?

    如果想调用本类中的非静态方法可以这么来写: public class TT{ public static void main(String[] args){ TT t = new TT(); t.fu ...

  8. 如何判断js中的数据类型?

    js六大数据类型:number.string.object.Boolean.null.undefined string: 由单引号或双引号来说明,如"string" number: ...

  9. Request 请求页面的地址路径获取

    Request.ApplicationPath: /testweb Request.CurrentExecutionFilePath: /testweb/default.aspx Request.Fi ...

  10. SQLSERVER如何获取一个数据库中的所有表的名称、一个表中所有字段的名称

    1.查询数据库中的所有数据库名: SELECT Name FROM Master..SysDatabases ORDER BY Name 2.查询某个数据库中所有的表名: SELECT Name FR ...