我有2个web应用部署在相同的JBoss /码头服务器。在码头5.1.14我具有下列码头-web.xml中,其配置的应用程序中的一个来作为虚拟主机(在同一端口上)运行:

<Configure class="org.jboss.jetty.JBossWebApplicationContext"> 
  <Call name="addVirtualHost"><Arg>app2.localhost.com</Arg></Call> 
</Configure>

此工作完全正常。不幸的是,它不与码头6.1.17在所有的工作。首先,“JBossWebApplicationContext”似乎现在被称为“JBossWebAppContext”,其次我能找到的文档建议我应该使用一个码头-web.xml中,看起来像这样:

<Configure class="org.jboss.jetty.JBossWebAppContext"> 
  <Set name="VirtualHosts"> 
    <Array type="java.lang.String"> 
      <Item>app2.localhost.com</Item> 
    </Array> 
  </Set> 
</Configure>

但是,这也不行。这两个web应用部署没有错误,但是当我试图在虚拟主机下访问第二应用程序,它只是访问第一个应用程式。这两种应用都在根上下文(这是转让)。

我怎样才能让虚拟主机工作?

(顺便说一句,我有一个朋友张贴此对serverfault前几天,但是没有人回答。)

有帮助吗?

解决方案

这句法工作,如果你将其包含在jetty6-web.xml中为每个web应用程序。

<Configure class="org.jboss.jetty.JBossWebAppContext">
  <Set name="VirtualHosts">
    <Array type="java.lang.String">
      <Item>host1.domain.com</Item>
      <Item>host2.domain.com</Item>
    </Array>
  </Set>
</Configure>

ALL web应用需要的,如果它们在相同的容器中运行定义的虚拟主机。出于某种原因,一个部署WAR与虚拟主机和一个没有不起作用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top