【发布时间】:2016-03-08 08:28:58
【问题描述】:
在 Apache Tomcat 中,所有配置文件的传统主目录是 ${catalina.home/base}/conf 文件夹。
我们可以在我们的文件系统中配置一个自定义文件夹(可能在 CATALINA_HOME/BASE 之外)作为 Tomcat 的配置主目录吗?如果是,我们该怎么做?
【问题讨论】:
标签: tomcat
在 Apache Tomcat 中,所有配置文件的传统主目录是 ${catalina.home/base}/conf 文件夹。
我们可以在我们的文件系统中配置一个自定义文件夹(可能在 CATALINA_HOME/BASE 之外)作为 Tomcat 的配置主目录吗?如果是,我们该怎么做?
【问题讨论】:
标签: tomcat
您不能拆分conf 目录。通常你所做的——以及 Tomcat 文档所建议的——是你有一个由 CATALINA_HOME 指向的 tomcat 的“二进制”安装,以及一个或可能几个“个人”实例,每个实例都有一个 conf、webapps等等都是。这将由CATALINA_BASE 指出。所以回答你的问题:设置一个环境变量CATALINA_BASE,在它下面你可以有你的“外部”配置目录。
为了完整起见,以下是Tomcat安装下文件RUNNING.txt中的相关信息:
在许多情况下,最好有一个副本 Tomcat 二进制分发在同一台上的多个用户之间共享 服务器。为此,您可以设置 $CATALINA_BASE 环境变量到包含您的文件的目录 “个人”Tomcat 实例。
当你使用 $CATALINA_BASE 时,Tomcat 会计算所有相对的 基于值的以下目录中的文件的引用 $CATALINA_BASE 而不是 $CATALINA_HOME:
bin - 仅 setenv.sh (*nix)、setenv.bat (windows) 和 tomcat-juli.jar
conf - 服务器配置文件(包括 server.xml)
日志 - 日志和输出文件
webapps - 自动加载的网络应用程序
work - Web 应用程序的临时工作目录
temp - JVM 用于临时文件的目录 (java.io.tmpdir)
请注意,默认情况下 Tomcat 将首先尝试加载类和 JAR 从 $CATALINA_BASE/lib 然后 $CATALINA_HOME/lib。你可以放置 实例特定的 JAR 和类(例如 JDBC 驱动程序)在 $CATALINA_BASE/lib 同时保留标准的 Tomcat JAR $CATALINA_HOME/lib.
如果不设置 $CATALINA_BASE,$CATALINA_BASE 将默认为 与 $CATALINA_HOME 相同的值,表示同一个目录 用于所有相对路径分辨率。
【讨论】: