Java进阶(十)java tomcat中context配置

Tomcat中Context的配置

问题:

java tomcat中<context> docBase属性是什么意思?

元素的属性:
path:指定访问该Web应用的URL入口。 
docBase:指定Web应用的文件路径,可以给定绝对路径,也可以给定相对于appBase属性的相对路径,如果Web应用采用开放目录结构,则指定Web应用的根目录,如果Web应用是个war文件,则指定war文件的路径。(指定项目所在地址) 
reloadable:如果这个属性设为true,tomcat服务器在运行状态下会监视在WEB-INF/classes和WEB-INF/lib目录下class文件的改动,如果监测到有class文件被更新的,服务器会自动重新加载Web应用。

 

当我们开发完一个Web应用后,我们需要将该应用发布到Web Server中,以便其他用户可以访问。在JAVA的WEB开发领域,我们通常使用TOMCAT作为我们的WEB服务器进行测试或正式部署。

 

一般我们将WEB应用打包成WAR格式,然后拷贝到TOMCAT的WEBAPP目录下进行发布,在正常情况下,TOMCAT将自动解压WAR文件并生成对应的目录,而且会在内存中动态创建该WEB应用对应的CONTEXT路径。比如我们的WAR文件是Sample.war,那么解压后的目录就是Sample目录,在内存中动态创建的Context路径就是/Sample。在开发阶段这样的默认行为是可以接受的,但是在正式部署的情况下,我们通常需要修改应用的Context路径以适应我们的需要。

 

如果我们想让用户仅仅输入域名来访问我们的Sample应用,我们就需要修改Tomcat的Context设置。具体如何设置Context路径的方式有两种,一种是修改{TOMCAT_HOME}/conf/server.xml文件,另一种是建立一个Context片段文件放在webapps目录下。我们这里介绍第一种方式。

 

使用任何文本编辑器打开server.xml文件,在<Host>节点下增加<Context>节点,并设置path,docBase,debug和reloadable属性,如下:

 

<?xml version="1.0" encoding="UTF-8"?>

<Server>

  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>

  <Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/>

  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>

  <GlobalNamingResources>

    <Environment

      name="simpleValue"

      type="java.lang.Integer"

      value="30"/>

    <Resource

      auth="Container"

      description="User database that can be updated and saved"

      name="UserDatabase"

      type="org.apache.catalina.UserDatabase"

      pathname="conf/tomcat-users.xml"

      factory="org.apache.catalina.users.MemoryUserDatabaseFactory"/>

  </GlobalNamingResources>

  <Service

      name="Catalina">

    <Connector

        port="8080"

        redirectPort="8443"

        minSpareThreads="25"

        connectionTimeout="20000"

        maxSpareThreads="75"

        maxThreads="150"

        maxHttpHeaderSize="8192">

    </Connector>

    <Connector

        port="8009"

        redirectPort="8443"

        protocol="AJP/1.3">

    </Connector>

    <Engine

        defaultHost="localhost"

        name="Catalina">

      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>

      <Host

          appBase="webapps"

          name="localhost">

        <Context

            path="/samples">

          <WatchedResource>WEB-INF/web.xml</WatchedResource>

        </Context>

        <Context

            path="/profiler">

          <WatchedResource>WEB-INF/web.xml</WatchedResource>

        </Context>

        <Context

            path="/flex">

          <WatchedResource>WEB-INF/web.xml</WatchedResource>

        </Context>

        <!-- 配置直接通过域名访问/Samples应用 -->

        <Context path="" docBase="/samples" debug="0" reloadable="true">

        

        </Context>

      </Host>

    </Engine>

  </Service>

</Server>

 

 

 

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

No Silver Bullet

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值