`
desert3
  • 浏览: 2136507 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

tomcat catalina.home和catalina.base区别(转)

 
阅读更多
catalina.home和catalina.base这两个属性仅在你需要安装多个Tomcat实例而不想安装多个软件备份的时候使用,这样能节省磁盘空间。

以Tomcat6.0为例,其Tomcat目录结构如下:
bin (运行脚本)
conf (配置文件)
lib (核心库文件)
logs (日志目录)
temp (临时目录)
webapps (自动装载的应用程序的目录)
work (JVM临时文件目录[java.io.tmpdir])

让我们看看这些目录那些可以被多个Tomcat实例公用,其实只有 bin 和 lib 目录,其它目录conf、logs、temp、webapps和work每个Tomcat实例必须拥有其自己独立的备份。
明白了上述关系就容易理解catalina.home和catalina.base的用途了。
catalina.home指向公用信息的位置,就是bin和lib的父目录
catalina.base指向每个Tomcat目录私有信息的位置,就是conf、logs、temp、webapps和work的父目录。
仅运行一个Tomcat实例时,这两个属性指向的位置是相同的。
==================================================================================================

我们可以从Tomcat 5.5 的配置文档(http://tomcat.apache.org/tomcat-5.5-doc/config/host.html )中找到答案:

The description below uses the variable name $CATALINA_HOME to refer to the directory into which you have installed Tomcat 5, and is the base directory against which most relative paths are resolved. However, if you have configured Tomcat 5 for multiple instances by setting a CATALINA_BASE directory, you should use $CATALINA_BASE instead of $CATALINA_HOME for each of these references.

从这段描述可以看出CATALINA_HOME 和CATALINA_BASE 的区别。简单的说,CATALINA_HOME 是Tomcat 的安装目录,CATALINA_BASE 是Tomcat 的工作目录。如果我们想要运行Tomcat 的多个实例,但是不想安装多个Tomcat 软件副本。那么我们可以配置多个工作目录,每个运行实例独占一个工作目录,但是共享同一个安装目录。

Tomcat 每个运行实例需要使用自己的conf 、logs 、temp 、webapps 、work 和shared 目录,因此CATALINA_BASE 就指向这些目录。 而其他目录主要包括了Tomcat 的二进制文件和脚本,CATALINA_HOME 就指向这些目录。

如果我们希望再运行另一个Tomcat 实例,那么我们可以建立一个目录,把conf 、logs 、temp 、webapps 、work 和shared 拷贝到该目录下,然后让CATALINA_BASE 指向该目录即可
分享到:
评论

相关推荐

    tomcat启动的问题--apr

    2010-8-11 18:24:13 org.apache.catalina.core.AprLifecycleListener lifecycleEvent 信息: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the ...

    tomcat8用redis实现session共享.rar

    3、将redisson-all-3.11.2.jar和redisson-tomcat-8-3.11.2.jar 拷贝到${catalina.base}\lib下 4、在原有tomcat\context.xml下 添加 以下代码(参考 <Manager className="org.redisson.tomcat....

    Tomcat使用Log4j输出catalina.out日志

    Tomcat默认的日志是用java.util.logging,有几点不足,文件catalian.out不能像log4j一样按天生成,将...在$CATALINA_BASE/lib下创建log4j.properties文件 log4j.properties的内容如下: log4j.rootLogger = INFO, CAT

    Tomcat调优.doc

    Tomcat 调优 性能优化 Tomcat调优  设置catalina.bat中的JAVA_OPTS参数 在C:\zxin10\Was\tomcat\bin目录下,找到catalina.bat文件,打开它,在echo Using CATALINA_BASE: %CATALINA_BASE%之前,加上

    linux系统下的tomcat9.0.7安装文件

    CATALINA_HOME=/usr/local/tomcat/apache-tomcat-9.0.0.M4 CATALINA_BASE=/usr/local/tomcat/apache-tomcat-9.0.0.M4 PATH=$PATH:$CATALINA_BASE/bin export PATH CATALINA_BASE 保持并推出:wq! 具体安装请查阅...

    cronolog-1.6.2.tar.gz

    | /usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null & 同时,文件中有一行 touch “$CATALINA_BASE”/logs/catalina.out 可以注释掉,完成之后重起Tomcat就可以了, 看...

    tomcat-source-code:tomcat8.x原始码-tomcat source code

    -Dcatalina.home=home -Dcatalina.base=home -Djava.endorsed.dirs=catalina-home/endorsed -Djava.io.tmpdir=catalina-home/temp -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util....

    apache-tomcat-10.0.10.exe安装包

    为 Tomcat 9 和更早版本设计的基于 Java EE 的应用程序可以放在$CATALINA_BASE/webapps-javaee目录下,Tomcat 会自动将其转换为 Jakarta EE 并复制到 webapps 目录。这种转换是通过 Apache Tomcat 的 Jakarta EE ...

    apache-tomcat-6.0.14.zip

     CATALINA_BASE=c:\tomcat    然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的(可以根据实际追加)servlet.jar追加到classpath中去,修改后的classpath如下:   classpath=.;%JAVA_HOME%\lib\...

    tomcat_80.rar

    1. 移除了对换变量中配置的CATALINA_HOME和CATALINE_BASE的依赖,运行startup.bat就一定是启动当前的tomcat。 2. 删除了webapps里的所有文件夹,避免未删除的ROOT目录与server.xml中的context配置发生冲突可能导致...

    COS——R.log

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at ...

    tomcat8.5:Tomcat8.5源码解析-源码解析

    虚拟机选项: -Dcatalina.home = catalina-home -Dcatalina.base = catalina-home -Djava.endorsed.dirs = catalina-home /认可-Djava.io.tmpdir = catalina-home / temp -Djava.util.logging.manager = org .apache...

    Tomcat源码分析1

    } }process的功能也很简单,1:如果catalina.home和catalina.base两个属性没有设置就设置一下,2:参数正确的话就调用execut

    带注释的Bootstrap.java

    //将${catalina.base},${catalina.home}替换为Tomcat的绝对路径 value = replace(value); List<Repository> repositories = new ArrayList(); String[] repositoryPaths = getPaths(value); for (String ...

    tomcat-5.5.23

    the value to use for "${catalina.home}" will be the "dist" subdirectory of your source distribution. <br>(2.1) Download a binary distribution of Tomcat from: <br> ...

    linux系统中修改tomcat默认输入日志路径的方法

    对本地的catalina.sh进行修改,这里是以将日志目录修改为/data/logs为例,即将$CATALINA_BASE/logs/catalina.out改为CATALINA_OUT=/data/logs。 2、修改logging.properties 进入tomcat安装目录/conf/,找到logging....

    Apache Tomcat 7.0

    免安装版本配置: 1.解压 2.添加环境变量TOMCAT_HOME;CATALINA_HOME=%TOMCAT_HOME%;CATALINA_BASE=%TOMCAT_HOME% 3.修改startup.bat和shutdown.bat文件 增加SET JAVA_HOME=.... SET CATALINA_HOME=....

    一台电脑上两个tomcat

    CATALINA_BASE1=E:\software\apache-tomcat-7.0.47copy CATALINA_BASE=E:\software\apache-tomcat-7.0.47 CATALINA_HOME1=E:\software\apache-tomcat-7.0.47copy CATALINA_HOME=E:\software\apache-tomcat-7.0.47 ...

    tomcat 64位

    在安装Tomcat之前一定要先安装好java运行...1,新建变量名:CATALINA_BASE,变量值:C:\tomcat 2,新建变量名:CATALINA_HOME,变量值:C:\tomcat 3,打开PATH,添加变量值:%CATALINA_HOME%\lib;%CATALINA_HOME%\bin

    ansible-role-tomcat-multi:最完整的Tomcat安装,支持,init.d脚本,应用程序命名,大页面,强化,漂亮的错误页面,sha512哈希密码,JMX配置,多个Tomcat版本,分离的catalina_home和多个catalina_base(很快)

    最完整的Tomcat安装,支持,init.d脚本,应用程序命名,巨大页面,强化,漂亮的错误页面,sha512哈希密码,JMX配置,多个Tomcat版本,分开的catalina_home和caralina_base。 目录 要求 没有。 安装 ansible-galaxy ...

Global site tag (gtag.js) - Google Analytics