Веб-приложения под Apache Tomcat с несколькими контекстами каталогов

У меня есть два веб-приложения, prod-1.2.1.war и test-2.0.0.war.

Если я положу их прямо в папку "tomcat/webapps", они будут развернуты как;

  • hXXp: //localhost/prod-1.2.1/
  • hXXp: //localhost/test-2.0.0/

Это работает, но на самом деле я хотел бы, чтобы они появились как;

  • hXXp: // локальный / vegshop / прод /
  • hXXp: // локальный / vegshop / тест /

Как вы видите, я бы хотел, чтобы "vegshop" был включен в контекстный путь. Я также хотел бы, чтобы нумерация версий исчезла без переименования WAR-файлов.

Спасибо.

Это Apache Tomcat v6.0 под Linux 2.6, работающий под управлением SUN JDK 1.6.

1 ответ

Вы не можете включить включить /vegshop/ часть в URL, как вы хотите с Tomcat. Веб-приложения - это не просто файлы, которые можно разместить где угодно. С Tomcat, /vegshop/ это либо:

  1. дискретное веб-приложение
  2. папка под ROOT webapp (по умолчанию, если нет webapp.

Лучшее, что вы можете сделать, это переименовать ваши файлы.war. Например prod-1.2.1.war в vegshop-prod.war

  • http://localhost/vegshop/
  • http://localhost/vegshop-test/

Если это /vegshop/prod/ это действительно очень важно для вас, тогда единственный вариант, который я бы рассмотрел, это прокси-сервер Tomcat с веб-сервером (например, Apache httpd) и переписать URL-адреса. Может даже быть способ закодировать что-то дикое с Tomcat, но все это кажется чрезмерным для такого косметического изменения. Это действительно так важно?

Другие вопросы по тегам