使用 WildFly (Undertow) 托管多个域
Posted
技术标签:
【中文标题】使用 WildFly (Undertow) 托管多个域【英文标题】:Hosting multiple domains with WildFly (Undertow) 【发布时间】:2014-10-12 12:50:33 【问题描述】:例如,我有两个域(app1.com、app2.com)和两个耳朵(app1.ear、 app2.ear)。每个 EAR 文件由 ejb.jar 和 web.war 组成。此外,每个 WAR 都有上下文根:/app1 或 /app2。
因此,如果我启动 WildFly,我将在 localhost:8080/app1 和 localhost:8080/app2 上运行两个应用程序。
如何将 app1.com 绑定到 localhost:8080/app1 并将 app2.com 绑定到 localhost:8080/app2 ?
据我了解,我应该在standalone.xml 中修改Undertow 子系统配置。我试过了:
<server name="default-server">
<http-listener name="default" socket-binding="http"/>
<host name="app1.com" default-web-module="app1.ear/web.war"/>
<host name="app2.com" default-web-module="app2.ear/web.war"/>
</server>
但它不起作用。
【问题讨论】:
【参考方案1】:添加WEB-INF/jboss-web.xml
有内容
<jboss-web>
<context-root>app1</context-root>
<virtual-host>app1.com</virtual-host>
</jboss-web>
第二次战争也是如此。
【讨论】:
这对我不起作用。仅当我使用 URL app1.com/app1 时。但是如果我想从根上下文(app1.com)访问 app1,如何配置? 然后将 context-root 设置为 / 我试过了,但对我不起作用(使用 Wildfly 8.2) 请创建新问题并发布您的配置,以便我们为您提供帮助。以上是关于使用 WildFly (Undertow) 托管多个域的主要内容,如果未能解决你的问题,请参考以下文章
Undertow:WAR 文件之外的静态根内容(wildfly)