Как настроить виртуальный хостинг Jetty 6 & Jboss 4.0.5? - PullRequest
2 голосов
/ 12 мая 2009

У меня есть 2 веб-приложения, развернутые на одном сервере JBoss / Jetty. В Jetty 5.1.14 у меня был следующий файл jetty-web.xml, в котором одно из приложений было настроено для работы в качестве виртуального хоста (на том же порту):

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

Это работало отлично. К сожалению, он не работает с Jetty 6.1.17 вообще. Во-первых, «JBossWebApplicationContext» теперь, кажется, теперь называется «JBossWebAppContext», а во-вторых, в документации, которую я смог найти, предлагается использовать файл jetty-web.xml, который выглядит так:

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

Но это тоже не работает. Два веб-приложения развертываются без ошибок, но когда я пытаюсь получить доступ ко 2-му приложению под виртуальным именем хоста, он просто обращается к первому приложению. Оба приложения находятся в корневом контексте (это не подлежит обсуждению).

Как заставить виртуальные хосты работать?

(Кстати, у меня был друг, опубликовавший это на сервере несколько дней назад, но никто не ответил.)

1 Ответ

1 голос
/ 08 июня 2009

Этот синтаксис работает, если вы включите его в jetty6-web.xml для каждого веб-приложения.

<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>

ВСЕ веб-приложения должны определять виртуальные хосты, если они работают в одном контейнере. По некоторым причинам развертывание одной WAR с виртуальными хостами и одной без не работает.

...