перенаправление / отображение URL одного и того же веб-приложения Java на несколько поддоменов - PullRequest
1 голос
/ 14 октября 2010

У меня есть домен, скажем www.domain.com. И я разработал Java-приложение, скажем, JWA. Теперь я хочу установить одно и то же приложение для разных клиентов с использованием поддоменов. Какое лучшее решение возможно?

что-то вроде "client1.domain.com" указывает на "client1" (переименованный в jwa)

Я знаю, что мы можем получить client1.domain.com/client1/, но client1 дважды не годится. или, по крайней мере, можем ли мы получить client1.domain.com/jwa/, не имея нескольких экземпляров tomcat? Кстати, я использую сервер Apache http на том же сервере и использую «proxy_module» для приложений java / tomcat

Привет

1 Ответ

3 голосов
/ 14 октября 2010

Вам не нужно несколько экземпляров Tomcat - вы можете указать нескольким клиентам по нескольким поддоменам использовать одно и то же веб-приложение.

НО убедитесь, что это соответствует вашему бизнес-сценарию - то есть вы действительно хотитенесколько экземпляров webapp или один экземпляр can могут обслуживать всех ваших клиентов.

Я имею в виду брендинг / логотип / общие данные / внешний вид и т. Д. - это распространено среди всех клиентов?

Допустим, это так.

Если настроен Apache, правильный способ - использовать директивы VirtualHost вместе с mod_proxy.

Конфигурация, подобная этой, на стороне Apache должна работать - создайте по одной на субдомен и укажите ProxyPass и ProxyPassReverse в веб-приложение Tomcat

<VirtualHost *:80>
  ServerName client1.domain.com

  ProxyRequests Off
  ProxyPreserveHost On

  <Proxy *>
    Order deny,allow
    Allow from all
  </Proxy>

  ProxyPass /jwa http://client1.domain.com:8080/jwa
  ProxyPassReverse /jwa http://client1.domain.com:8080/jwa
</VirtualHost>

Связанное чтение

Документы Apache содержат множество примеров конфигурации VirtualHost

Существует также решение без Apache httpd, вы можете настроить Host entires в Tomcat server.xml, но Apache - лучшее место для управления URL вашего домена

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...