tomcat的url配置

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一种方法:在tomcat 中的conf 目录中,在server.xml 中的,<host/>节点中添加:
<Context
path="/hello" docBase="D:eclipse3.2.2forwebtoolsworkspacehelloWebRoot" debug="0" privileged="true">
</Context>
至于Context 节点属性,可详细见相关文档。

第二种方法:将web 项目文件件拷贝到webapps 目录中。

第三种方法:很灵活,在conf 目录中,新建 Catalina (注意大小写)\localhost 目录,在该目录中新建一个xml 文件,名字可以随意取,只要和当前文件中的文件名不重复就行了,该xml 文件的内容为: <Context
path="/hello" docBase="D:eclipse3.2.2forwebtoolsworkspacehelloWebRoot" debug="0" privileged="true"> </Context>
第3个方法有个优点,可以定义别名。

服务器端运行的项目名称为path ,外部访问的URL 则使用XML 的文件名。

这个方法很方便的隐藏了项目的名称,对一些项目名称被固定不能更换,但外部访问时又想换个路径,非常有效。

第2、3还有优点,可以定义一些个性配置,如数据源的配置等。

还有一篇 详细的
1、直接放到Webapps 目录下
Tomcat 的Webapps 目录是Tomcat 默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。

也可以将JSP 程序打包成一个war 包放在目录下,服务器会自动解开这个war 包,并在这个目录下生成一个同名的文件夹。

一个war 包就是有特性格式的jar 包,它是将一个Web 程序的所有内容进行压缩得到。

具体如何打包,可以使用许多开发工具的IDE 环境,如Eclipse 、NetBeans 、ant 、JBuilder 等。

也可以用cmd 命令:jar -cvf applicationname.war package.*;
甚至可以在程序执行中打包:
双击代码全选
1 2 3 4 5 6 try{
string strjavahome = system.getproperty("java.home");
strjavahome = strjavahome.substring(0,stindexof())+"bin"; runtime.getruntime().exec("cmd
/c start "+strjavahome+"jar cvf hello.war c:tomcat5.0webappsroot*");
}
catch(exception e){system.out.println(e);}
webapps 这个默认的应用目录也是可以改变。

打开Tomcat 的conf 目录下的server.xml 文件,找到下面内容:
<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeloy="true" xmlValidation="falase" xmlNamespaceAware="false">
2、在server.xml 中指定
在Tomcat 的配置文件中,一个Web 应用就是一个特定的Context ,可以通过在server.xml 中新建Context 里部署一个JSP 应用程序。

打开server.xml 文件,在Host 标签内建一个Context ,内容如下。

<Context path="/myapp" reloadable="true" docBase="D:myapp" workDir="D:myappwork"/> 其中path 是虚拟路径,docBase 是JSP 应用程序的物理路径,workDir 是这个应用的工作目录,存放运行是生成的于这个应用相关的文件。

3、创建一个Context 文件
以上两种方法,Web 应用被服务器加载后都会在Tomcat 的confcatalinalocalhost 目录下生成一个
XML文件,其内容如下:
<Context path="/admin" docBase="${catalina.home}/server/webapps/admin" debug="0" privileged="true"></Context>
可以看出,文件中描述一个应用程序的Context信息,其内容和server.xml中的Context信息格式是一致的,文件名便是虚拟目录名。

您可以直接建立这样的一个xml文件,放在Tomcat的confcatalinalocalhost目录下。

例子如下:
注意:删除一个Web应用同时也要删除webapps下相应的文件夹祸server.xml中相应的Context,还要将Tomcat的conf
catalinalocalhost目录下相应的xml文件删除。

否则Tomcat仍会岸配置去加载。

tomcat部署web应用主要有以下几种方式:
1.拷贝你的WAR文件或者你的web应用文件夹(包括该web的所有内容)到$CATALINA_BASE/webapps目录下。

2.为你的web服务建立一个只包括context内容的XML片断文件,并把该文件放到$CATALINA_BASE/webapps目录下。

这个web应用本身可以存储在硬盘上的任何地方。

这种context 片断提供了一种便利的方法来部署web应用,你不需要编辑server.xml,除非你想改变缺省的部署特性,安装一个新的web应用时不需要重启动Tomcat。

3.同方法2,只是将context片断放在CATALINA_BASEconfCatalinalocalhost目录下.这种方法比方法2>要有效,笔者经过多次实验发现方法2不如后面这种方法好用.前者多次出现系统打不开的情况.
4.直接在server.xml中</Host>前加上Context片断,使用这种方法时,tomcat会自动在CATALINA_BASEconfCatalinalocalhost目录下生成一个文件片断.方法同方法3具有同样效果.这种方式需要将ROOT目录删除才行.
另外,为了让tomcat只运行conf/server.xml中指定的web应用,可以有以下几种办法:
实现一:
1)将要部署的WEB应用放在webapps以外的路径, 并在server.xml相应的context中的docBase 指定.
2)删除webapps中的所有文件夹, 以及conf/catalina/localhost下所有xml文件.
注: webapps是server.xml中的Host元素的appBase属性的值.
实现二:
1) 修改server.xml中Host元素的属性, 添加或修改: deployXML="false" deployOnStartup="false" autoDeploy="false"
2) 含义:
deployXML="false": 不部署conf/catalina/localhost下的xml相应的WEB应用deployOnStartup="false" : tomcat启动时, 不部署webapps下的所有web应用autoDeploy="false": 避免tomcat在扫描改动时, 再次把webapps下的web应用给部署进来.。

相关文档
最新文档