我在同一台服务器(Linux)上运行了Tomcat6的多个实例,它可以正常工作。我正在尝试找出关于设置CATALINA_HOME
和CATALINA_BASE
变量的标准实践是什么。
在我的tomcat安装中,我将CATALINA_HOME
设置为指向一个“公共”文件夹(比如/tomcat6
),并且CATALINA_BASE
变量根据实例名称的不同而不同(比如/tomcat_instance1
、/tomcat_instance2
)。
我的问题是:
CATALINA_HOME
,然后去掉CATALINA_BASE
(反之亦然) ?发布于 2015-04-02 03:00:38
CATALINA_HOME
vs CATALINA_BASE
如果你运行多个实例,那么你需要这两个变量,否则只需要CATALINA_HOME
。
换句话说:CATALINA_HOME
是必需的,而CATALINA_BASE
是可选的。
CATALINA_HOME
表示Tomcat安装的根目录。
通过为每个实例定义$CATALINA_BASE
,可以为多个实例配置
。如果未配置多个实例,则
$CATALINA_BASE
与$CATALINA_HOME
相同。
请参阅:Apache Tomcat 7 - Introduction
在RUNNING.txt中记录了使用单独的CATALINA_HOME
和CATALINA_BASE
运行,它说:
CATALINA_HOME
和CATALINA_BASE
环境变量分别用于指定Apache Tomcat的位置及其活动配置的位置。
您不能在setenv
脚本中配置CATALINA_HOME
和CATALINA_BASE
变量,因为它们用于查找该文件。
例如:
(4.1) Tomcat可以通过执行以下命令之一启动:
启动$CATALINA_HOME/bin/ %CATALINA_HOME%\bin\startup.bat (Unix)
或
%CATALINA_HOME%\bin\catalina.bat启动(Windows) $CATALINA_HOME/bin/catalina.sh启动(Unix)
多个Tomcat实例
在许多情况下,在同一服务器上的多个用户之间共享Tomcat二进制发行版的单个副本是可取的。要实现这一点,您可以将
CATALINA_BASE
环境变量设置为包含“个人”Tomcat实例的文件的目录。
当使用单独的CATALINA_HOME
和CATALINA_BASE
运行时,文件和目录按如下方式拆分:
在CATALINA_BASE
中:
仅限
bin
:tomcat-juli.jarconf
(*nix)或JVM (Windows)、JVM服务器配置文件(包括server.xml)lib
库和类,如belowlogs
所述)-日志和输出fileswebapps
-自动加载的web applicationswork
- web applicationstemp
的临时工作目录- setenv.sh用于Temporary files> 的目录
在CATALINA_HOME
中
bin
-启动和关闭scriptslib
-库和类,如所解释的belowendorsed
-覆盖标准“认可的标准”的库。默认情况下它是不存在的。如何检查
检查CATALINA_BASE
和CATALINA_HOME
的最简单方法是运行startup.sh
,例如:
$ /usr/share/tomcat7/bin/startup.sh
Using CATALINA_BASE: /usr/share/tomcat7
Using CATALINA_HOME: /usr/share/tomcat7
您也可以使用dpkg
工具检查Tomcat文件的安装位置,如下所示(Debian/Ubuntu):
dpkg -L tomcat7-common
https://stackoverflow.com/questions/3090398
复制相似问题