Как реализовать стиль стиля Basecamp в среде Java/Java EE? например <имя_пользователя>.hostname.com

110
13

URL-адрес Basecamp, например .basecamphq.com, например seymores.basecamp.com.


Как я могу сделать то же самое в среде Tomcat?

спросил(а) 2009-02-25T03:19:00+03:00 11 лет, 9 месяцев назад
1
Решение
91

Другой аппроксимацией является использование UrlRewriteFilter. Используя этот фильтр с несколькими политиками, вы можете, например, конвертировать вызовы типа:


http://username.domain (перед переписыванием URL)

к


http://domain/your_servlet?user=username (после перезаписи URL)

ответил(а) 2009-02-25T14:37:00+03:00 11 лет, 9 месяцев назад
72

Если вы просто хотите, чтобы одна копия веб-приложения действовала по-разному в зависимости от используемого имени виртуального хоста, проверьте заголовок "Host" . Это можно сделать в Filter или сервлет диспетчера, в зависимости от того, что вы хотите сделать с результатом.

У вас может быть другая копия веб-приложения для каждого виртуального сервера добавление элементов Host в элемент Engine в вашей конфигурации сервера. Это создает отдельные виртуальные хосты, каждый из которых имеет собственный независимый набор веб-приложений.

ответил(а) 2009-02-25T03:41:00+03:00 11 лет, 9 месяцев назад
59

Короткий ответ состоит в том, чтобы разобрать узел из URL-адреса запроса. Затем используйте это со всеми запросами, которые вы делаете. В конфигурации по умолчанию Tomcat будет отвечать на весь запрос, который сопоставляется с IP-адресом, который он прослушивает.

ответил(а) 2009-02-25T03:29:00+03:00 11 лет, 9 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема