Tomcat8:在自定义文件中配置连接器

Tomcat 8: Configure connectors in a custom file

我对Tomcat中的连接器进行了一些配置。配置在 server.xml 中完成。但是,不建议直接编辑此文件。所以我的问题是,我可以将我的配置放在其他地方吗?例如,我有一个自定义的 context.xml,我在其中放置了我的资源配置。此文件中的设置会覆盖默认设置 context.xml

这可以用同样的方法来完成吗?

A <Connector> 不是特定于应用程序的。将 <Connector> 直接放在 Tomcat 的 conf/server.xml 文件中是完全合适的。这就是 Tomcat 附带的库存 server.xml 文件包含连接器的原因。

要按照最初的措辞回答问题,Tomcat 没有明显的机制将 "extra" 文件包含在 conf/server.xml 中,但您可以使用 XML实现它的机制。

我不推荐这种技术,因为它要求您的服务器启用外部实体处理,这可以 decrease the security of your environment.

看起来像这样:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE Server [
  <!ENTITY extcfg SYSTEM "extra.xml">
]>
<Server port="8005" shutdown=SHUTDOWN">

  ...
  ...

  <Service name="Catalina">
    ...
    ...
    &extcfg; <!-- This will import extra.xml to this location -->
  </Service>
</Server>

那么您的 extra.xml:

中将包含此内容
<Connector port="8009" ... />

同样,我不推荐这种技术,但它应该有用。

相反,只需将您的 <Connector> 直接放入 conf/server.xml