我对Tomcat中的连接器进行了一些配置。配置在server.xml
完成。但是,不建议直接编辑此文件。所以我的问题是,我可以把我的配置放在其他地方吗?例如,我有一个自定义的context.xml
,我已经放置了我的资源配置。该文件中的设置将覆盖默认的context.xml
。Tomcat 8:在自定义文件中配置连接器
这可以以同样的方式完成,但对于连接器?
我对Tomcat中的连接器进行了一些配置。配置在server.xml
完成。但是,不建议直接编辑此文件。所以我的问题是,我可以把我的配置放在其他地方吗?例如,我有一个自定义的context.xml
,我已经放置了我的资源配置。该文件中的设置将覆盖默认的context.xml
。Tomcat 8:在自定义文件中配置连接器
这可以以同样的方式完成,但对于连接器?
A <Connector>
不是特定于应用程序的。将<Connector>
直接放在Tomcat的conf/server.xml
文件中是完全合适的。这就是Tomcat附带的stock server.xml文件包含连接器的原因。
为了回答这个问题,最初的措辞是,Tomcat没有明确的机制在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>
s直接放入conf/server.xml
即可。
是什么让你说不建议直接编辑'server.xml'? –
根据Tomcat文档,为应用程序上下文设置应放在: - 在以/META-INF/context.xml 单个文件 - 在单个文件(带有名为“.xml”扩展名)在$ CATALINA_BASE/conf/[enginename]/[hostname]/directory - 在conf/server.xml主文件中的主机元素内 不建议将元素直接放在server.xml文件中。 但是,这个建议是针对上下文元素的。是否有可能在单个文件中放置元素? –
Paul