Развертывание war на Tomcat без имени war в URL-адресе

создать war-файл с именем myapp.войну и развернуть его на Tomcat. Я изменил порт с 8080 на 80, поэтому я могу добраться до него по адресу example.com/myapp (где example.com является моим хозяином). Как я могу настроить приложение так, когда я иду в example.com, это показывает мое приложение? Я не хочу просто перенаправлять из example.com к example.com/myapp - я не хочу иметь myapp в URL-адресе. Должен ли я настроить Apache для обслуживания таких страниц, или я могу сделать это с виртуальным хостом в Tomcat конфигурация?

4 ответов


все, что вам нужно сделать, это имя войны ROOT.war.


не обязательно настройка интерфейса Apache или настройка виртуального хостинга в Tomcat для этого. Вместо этого просто разверните webapp в "корневом контексте". Для этого обратитесь к как сделать мое веб-приложение приложением Tomcat по умолчанию ? на Вики Tomcat. Они описывают три возможных метода, чтобы вы могли подобрать тот, который соответствует вашим потребностям.


вот два возможных метода:

  1. переименуйте свою войну в ROOT.война!--9-->
  2. нет необходимости переименовывать. Перейти к CATALINA_BASE/conf/server.xml найти элемент Хоста и установить autoDeploy="false" deployOnStartup="false" затем добавить <Context path="" docBase="your_project_name"/> в конце концов, как:

expamle#2:

  <Host name="localhost"  appBase="webapps"
        unpackWARs="true" autoDeploy="false" deployOnStartup="false"> 

    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
           prefix="localhost_access_log." suffix=".txt"
           pattern="%h %l %u %t &quot;%r&quot; %s %b" />
    <Context path="" docBase="your_project_name"/><!--Add this-->
  </Host>