Где я должен установить контекстный путь для Tomcat?
Мой обычный вопрос о Tomcat. Tomcat рассказывает о<Context>
,
НЕ рекомендуется размещать элементы непосредственно в файле server.xml.
Но
Этот атрибут должен использоваться только при статическом определении контекста в server.xml. Во всех других случаях путь будет выведен из имен файлов, используемых либо для файла контекста.xml, либо для docBase.
Даже при статическом определении контекста в server.xml этот атрибут не следует устанавливать, если только docBase не находится в appBase хоста, либо оба параметра deployOnStartup и autoDeploy имеют значение false. Если это правило не соблюдается, может произойти двойное развертывание.
Вопросы:
1) Где я должен установить свой контекст path
(Без ROOT.war и ROOT.xml) (я должен в server.xml
, но это не рекомендуется)
2) Что такое двойное развертывание и когда это происходит?
3) Если я установлю свой контекст path
в ""
и если я установлю docBase
в /opt/tomcat/conf/Catalina/mysite.dom/mysite.xml
в catalina.out
есть следующие записи:
17-Aug-2018 10:24:25.883 WARNING [main] org.apache.catalina.startup.HostConfig.deployDescriptor The path attribute with value [] in deployment descriptor [/opt/tomcat/conf/Catalina/mp.org/mp.xml] has been ignored
17-Aug-2018 10:24:25.890 WARNING [main] org.apache.catalina.startup.HostConfig.deployDescriptor A docBase [/var/www/ModularPlatform/target/web/mp] inside the host appBase has been specified, and will be ignored
Но по этому пути я могу обратиться - это работа.
3.1 Почему это работает?
3.2 Почему tomcat пытается это игнорировать?
4) Также в catalina.out
следующая запись тоже:
17-Aug-2018 10:24:26.047 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/var/www/mysite/target/web/ROOT]
Почему Tomcat создает каталог ROOT?
У меня есть Tomcat 9.0.10.
Спасибо за терпение.
PS Извините за мой английский.