WildFly的默认安装只有指定的根上下文-表示欢迎页
<subsystem xmlns="urn:jboss:domain:undertow:1.2" instance-id="main">
<buffer-cache name="default"/>
<server name="default-server">
<http-listener name="default" socket-binding="http"/>
<host name="default-host" alias="localhost">
<location name="/" handler="welcome-content"/>
<filter-ref name="server-header"/>
<filter-ref name="x-powered-by-header"/>
</host>
</server>
<servlet-container name="default">
<jsp-config/>
<websockets/>
</servlet-container>
<handlers>
<file name="welcome-content" path="${jboss.home.dir}/welcome-content"/>
</handlers>
<filters>
<response-header name="server-header" header-name="Server" header-value="WildFly/8"/>
<response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/>
</filters>
</subsystem>我有/webapp上的web应用程序,我希望它能从根目录中获得。
我同意转发,所以到目前为止我已经在欢迎的内容中设置了它。
<META HTTP-EQUIV="Refresh" CONTENT="0; URL=/webapp/"/>我不同意将web应用程序从它的上下文中移开(例如直接移到根)。另外,我想避免引用应用程序通过文件系统,因为它是现在做的。
应该可以将默认的文件处理程序替换为直接转发。有~url处理程序吗?也许可以在地点或其他地方指定相对地址?我很难找到这些东西的参考文件。
编辑:发布后你会看到一些烦人的东西。
发布于 2015-03-05 07:45:13
1.如果您有EAR,则只需在application.xml中将web模块的上下文根设置为"/“。
<module>
<web>
<web-uri>webapp.war</web-uri>
<context-root>/</context-root>
</web>
</module>2.如果有WAR,则需要在web.xml旁边添加包含以下内容的jboss-web.xml:
<jboss-web>
<context-root>/</context-root>
</jboss-web>(编辑)3.您可以为默认主机设置默认的web模块属性
<subsystem xmlns="urn:jboss:domain:undertow:1.1">
<server name="default-server" default-host="webapp">
<host name="default-host" alias="localhost" default-web-module="webapp.war">
</host>
</server>
</subsystem>发布于 2015-03-05 17:00:30
如果你想保持上下文,我知道有两种方法。您可以只使用一个转发页面部署一个ROOT.war。它不必被称为ROOT.war,但这是/subsystem=undertow/server=default-server/host=default-host的默认设置。不过,您可以将default-web-module属性更改为任何东西。
另一个选项可能是错误的,但有效的是更改$JBOSS_HOME/welcome-content/index.html页面。第一种方法可能更安全,因为它应该使升级更容易。
https://stackoverflow.com/questions/28864273
复制相似问题