例如我有两个域(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 绑定(bind)到 localhost:8080/app1 并将 app2.com 绑定(bind)到 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>
但这是行不通的。
最佳答案
添加WEB-INF/jboss-web.xml
有内容
<jboss-web>
<context-root>app1</context-root>
<virtual-host>app1.com</virtual-host>
</jboss-web>
第二次 war 也是如此。
关于java - 使用 WildFly (Undertow) 托管多个域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25383103/