Я снова пробую то, чего, вероятно, не должен делать... но... обычно мне кажется, что это возможно. На этот раз я действительно скрещиваю пальцы.
У меня есть экземпляр Tomcat 8. На этом экземпляре у меня есть:
- AppA (WAR) — основное веб-приложение
- AppB (WAR) — вторичное подприложение (на самом деле это больше функция), но люди будут получать доступ, используя специальный путь (например, «сервис»).
Я не хочу запускать Apache HTTPD (или любые другие дополнительные сервисные уровни). Я также хочу сделать это на уровне tomcat, вместо того, чтобы пытаться подделать его через входную сеть/waf/etc или через само приложение (позволить разработчику работать над другим необходимым кодированием).
Что я действительно хочу, так это настроить Tomcat таким образом, чтобы он справился с этим сам:
- Пользователь может посетить https://host.com/AppA.
- Пользователь может использовать эту функцию, если он перейдет на https://host.com/AppA/service ( который указывает на AppB, но пользователь никогда не должен видеть WAR-имя «AppB» — изменение WAR-имени на «сервис» вполне приемлемо, если это сохраняет здравомыслие)
Теперь я попытался выполнить конфигурацию виртуального хоста (https://tomcat.apache.org/tomcat-8.0-doc/virtual-hosting-howto.html) с небольшими изменениями здесь, чтобы посмотреть, смогу ли я сделать это нужным мне... и... это не удается, но я думаю, что если кот может сделать это, я могу получить его там.
Что я пробовал до сих пор:
- Обновлен [tomcat]/conf/server.xml с добавлением записи.
- Добавлена новая папка, похожая на «webapps», с именем [tomcat]/AppBapp (здесь находится AppB.war)
- Добавлен файл контекста [tomcat]/conf/Catalina/localhost/AppB.xml.
Я видел несколько сообщений, где они вроде как делают это, но в противоположном направлении (корневой веб-каталог указывает на какой-то пользовательский путь к серверу). Я думаю, что могу разобраться с этой конфигурацией, но я должен спросить... сработает ли эта стратегия вообще для того, что я пытаюсь сделать с tomcat? Или я полностью ошибаюсь?
Большое спасибо за ваше время. Всегда ценится!