Назад | Перейти на главную страницу

Удалить корневой каталог Tomcat

Можно ли удалить ROOT-каталог tomcat? У нас есть несколько приложений, работающих на экземпляре tomcat. Меня попросили очистить каталог webapps и удалить все неиспользуемые папки. Я удалил примеры документации менеджера host-manager. Все в порядке, как я и ожидал. Я посмотрел на папку ROOT, там есть изображения, пара страниц jsp и каталог WEB-INF. Наши приложения не используют ни один из них, поэтому я удалил каталог ROOT. Теперь сервер зависает при запуске, и мои приложения не запускаются. Можно ли удалить ROOT-каталог? Похоже, что согласно документам Apache это необязательно:

"Веб-приложение ROOT представляет очень низкий риск безопасности, но оно включает версию Tomcat, которая используется. Веб-приложение ROOT обычно следует удалять из общедоступного экземпляра Tomcat, но не по соображениям безопасности, а для того, чтобы страница по умолчанию отображается для пользователей ".

Я попытался оставить только пустой ROOT-каталог, но он все равно зависает. Есть ли конфигурация, которую мне где-то не хватает, которая могла бы искать каталог ROOT?

Tomcat версии 8.5.15

Многие компоненты Tomcat предполагают, что org.apache.catalina.Context доступно для каждого запроса. Если вы удалите ROOT приложение, это не будет верно для всех путей URI и NullPointerExceptions будет следовать. Это обязательно происходит с RewriteValve, но может относиться к другим компонентам.

Поэтому лучше иметь ROOT приложение, но также может быть пустой каталог.

Является ли такое поведение компонентов Tomcat ошибка или нет подлежит обсуждению. Лично я считаю пропавшим без вести ROOT контекст как неправильная конфигурация, но вы можете подать отчет об ошибке если вы думаете иначе.