5

apache tomcat 7 を使用して、1 台のマシンで多数の仮想ホストを実行しています。server.xmlHostにすべての仮想ホストのタグを挿入して、それらを一元的に管理できるようにしています。
しかし今、多くのホストタグを追加した後、server.xml が非常に大きくなったので、すべての仮想ホスト関連のタグを個別の xml ファイルに入れる方法を探しています (Apache が httpd.conf と仮想ホストに対して行うのとまったく同じです)管理)。たとえば、ホストごとに個別のxmlファイルを作成し、それらすべてをディレクトリに配置し、Tomcatに強制的にロードさせます!
何か案が???

4

1 に答える 1

11

以下は動作するはずですが、Tomcat のバグが原因で動作しません。トランク ( r1333827 ) と 7.0.x ( r1333829 ) のバグを修正しました。修正は Tomcat 7.0.28 以降に含まれます。これが以前は機能していたと断言できたはずです。JVM の xml パーサーがある時点で強化され、古い JVM バージョンでも動作する可能性がありますが、私はそれをテストしていません。

ホストごとに 1 つの XML エンティティを使用できます。例えば:

<server>要素の直前に次を挿入します。

<!DOCTYPE server-xml [
  <!ENTITY host1 SYSTEM "host1.txt">
]>

host1.txt の内容は、定義するホスト要素です。

<Host>
  ...
</Host>

そして、これを<engine>要素内の server.xml に次のように挿入します。

<engine ...>
  &host1;
</engine>

必要なホストの数だけ繰り返します。

于 2012-05-04T09:48:30.933 に答える