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

Возможно ли перезагрузить веб-приложение вручную без Tomcat Manager?

Я хочу перезагрузить (или перезапустить) одно конкретное веб-приложение на сервере Apache Tomcat (6 или 7) без Tomcat Manager или атрибута Automatic Reloadable. Использование диспетчера снова создаст еще одну угрозу безопасности, а атрибут reloadable не работает, когда вам нужно загружать / копировать большие файлы, поскольку он уже перезагружается, когда загрузка еще не завершена.

Будучи пользователем root, должно быть легко перезагрузить конкретное веб-приложение вместо перезапуска службы Tomcat (которая перезагружает все веб-приложения в нем), верно?

Использовать JMX, и разрешить подключение только с localhost.

Типичный метод повторной загрузки больших файлов - просто выбросить новый файл .war, и tomcat повторно развернет ваше приложение «полностью». В наши дни вы можете выполнять параллельное развертывание https://stackoverflow.com/a/6584259/32453

Поскольку вы упомянули, что являетесь пользователем root, я полагаю, что вы также можете отбросить всех tomcat.

или идея, которая у меня была, заключалась в том, чтобы скопировать все новые файлы, а затем просто «переименовать» папки, так что переименуйте его в папку webapps как-нибудь после переименования старого во что-то другое.

Также может быть способ указать коту только смотреть «определенные местоположения» вместо значения по умолчанию (как минимум WEB-INF / lib / *) (context.xml: тег WatchedResource по умолчанию - WEB-INF / web.xml).

чтобы вы могли скопировать файлы, а затем коснуться файла там.

Использование менеджера снова приведет к еще одной угрозе безопасности

О каком риске безопасности вы говорите?

wget --http-user=user \
     --http-password=password \
     -q -O - http://localhost:8080/manager/reload?path=/examples

http://tomcat.apache.org/tomcat-6.0-doc/manager-howto.html#Supported%20Manager%20Commands