我使用apache tomcat 7在单台机器上运行很多ofo虚拟主机,我Host
在server.xml中为每个虚拟主机插入一个标签,这样我就可以集中管理它们。
但是现在,在添加了很多主机标签之后,server.xml 变得如此之大,我正在寻找一种方法将每个虚拟主机相关标签放在一个单独的 xml 文件中(与 apache 对 httpd.conf 和虚拟主机所做的完全相同)管理)。例如,我为每个主机创建一个单独的 xml 文件并将它们全部放入一个目录并强制 tomcat 加载它们!
任何的想法???
问问题
2965 次
1 回答
11
以下应该可以工作,但不是由于 Tomcat 错误。我已经修复了主干 ( r1333827 ) 和 7.0.x ( r1333829 ) 中的错误,该修复将包含在 Tomcat 7.0.28 及以后的版本中。我可以发誓这以前有效。可能是 JVM 中的 xml 解析器在某个时候被收紧了,这仍然适用于较旧的 JVM 版本,但我还没有测试过。
您可以使用 XML 实体 - 每个主机一个。例如:
在元素之前插入以下<server>
内容:
<!DOCTYPE server-xml [
<!ENTITY host1 SYSTEM "host1.txt">
]>
host1.txt 的内容是您要定义的主机元素:
<Host>
...
</Host>
然后将其插入到 server.xml 中的<engine>
元素中,如下所示:
<engine ...>
&host1;
</engine>
根据需要对尽可能多的主机重复此操作。
于 2012-05-04T09:48:30.933 回答