У меня есть сервер Tomcat с двумя веб-приложениями, app1 и app2 ( app
часть действительно такая же). У каждого приложения есть независимая группа пользователей.
Я хочу, чтобы группы могли получить доступ к своему соответствующему приложению, используя group1.domain.com/app
и group2.domain.com/app
URL-адреса, что означает, что числа должны быть скрыты от URL-адреса, отображаемого в браузере. Я полагаю, что должен быть механизм, который возвращал бы правильное приложение на основе group#
часть URL-адреса.
У меня есть смутное представление о перезаписи URL. Есть ли способ сделать это только с Tomcat? Или мне нужен HTTP-сервер Apache? Я бы предпочел не использовать Apache, если это возможно, но при необходимости у меня нет проблем.
На самом деле речь идет не о переписывании URL-адреса, а о виртуальном хостинге.
Вы можете сделать это в Tomcat с помощью Host
элемент в server.xml. Для вашего случая вам понадобится Host
group1.domain.com
где appbase
(прочтите папку, в которой кот ищет войны) будет содержать app1 и Host
group2.domain.com
где appbase будет указывать на папку, содержащую app2.
Возможно, вам понадобится хост по умолчанию для тех пользовательских агентов, которые используют IP-адрес.
Таким образом, в server.xml что-то вроде этого:
<Host name="group1.domain.com" appBase="/war/group1"/>
<Host name="group2.domain.com" appBase="/war/group2"/>
Затем app.war в / war / group1 (для первого приложения) и app.war в / war / group2 (для второго)