Невозможно получить доступ к диспетчеру хоста Tomcat 8 (я могу получить доступ к приложению диспетчера просто отлично)

Я не могу получить доступ к Host Manager после установки Tomcat 8 на моем сервере Ubuntu 16.04. Я могу получить доступ к приложению Manager.

Я добавил роли manager-gui и admin-gui в свой файл tomcat-users.xml , расположенный в Каталог $ CATALINA_HOME / conf / .

<tomcat-users . . .>
    <role rolename="manager-gui"/>
    <role rolename="admin-gui"/>
    <user username="myusername" password="mypassword" roles="manager-gui,admin-gui"/>
</tomcat-users>

Есть идеи?

enter image description here

enter image description here

enter image description here

0
задан 19 September 2016 в 09:29
3 ответа

У меня была точно такая же проблема, как и у вас.

Вот как я решил это:

conf / tomcat-users.xml (остается прежним)

<tomcat-users>
   <role rolename="admin-gui"/>
   <role rolename="manager-gui"/>
   <user username="admin" password="password" roles="admin-gui,manager-gui"/>
</tomcat-users>

В conf / Catalina / localhost мне нужен дополнительный файл для каждого контекста:

manager.xml

<Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/manager">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>

host-manager.xml

<Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/host-manager">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>

После этого мне было предложено ввести имя пользователя и пароль, и это сработало.

Я прочитал несколько статей, в которых предлагалось редактировать клапаны в /webapps/manager/META-INF/context.xml и / webapps / host-manager / META-INF / context.xml, но я думаю, что локальный хост, указанный выше, имеет приоритет.

2
ответ дан 4 December 2019 в 12:22

У меня тоже была такая же проблема. Решил это следующим образом:

Найдите и отредактируйте файл host-manager webapp context.xml:

 $CATALINA_HOME/webapps/host-manager/META-INF/context.xml

Закомментируйте Valve, которая ограничивает ваш доступ только локальным хостом:

    <Context antiResourceLocking="false" privileged="true" >
<!--
     <Valve className="org.apache.catalina.valves.RemoteAddrValve"
             allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->

Сохраните и закройте файл.

Хорошо Практика заключалась в перезапуске Tomcat, но мне в этом не было необходимости, доступ был немедленным.

Tomcat 8.5.29 на OEL 7.4, Java 1.8_162

1
ответ дан 4 December 2019 в 12:22

У меня была та же проблема, но я запускал Tomcat 9 в Windows 10. Оба решения Marc Hearling и user3559338 работают, но я добавлю некоторые дополнительные идеи.

Первым необычным моментом было то, что решение не работало, если я включал аргумент docBase. Если бы я удалил этот аргумент, я смог бы заставить работать приложение Manager и статус сервера. Однако хост-менеджер не работал. В конце концов я обнаружил, что каталог host-manager отсутствует в каталоге webapps. Я загрузил zip-файл tomcat и смог восстановить отсутствующий каталог. Я точно не знаю, почему он пропал. Первоначально я установил Tomcat с помощью установщика Windows, а не с помощью zip-файла tomcat. Возможно, этот установщик не устанавливает каталог host-manager. Возможно, я случайно удалил эту папку, но я в этом сомневаюсь. После того, как у меня заработали приложение Manager, статус сервера и диспетчер хоста, я вернул аргумент docBase в два файла контекста xml, и на этот раз они сработали.Затем я поиграл с docBase и заметил, что, например, вы все еще можете получить доступ к диспетчеру узлов, даже если введете фиктивный адрес docBase. Это заставляет меня задаться вопросом, какова точная ситуация, когда нужно включить параметр docBase. Единственный способ, которым я мог заставить параметр docBase потерпеть неудачу, - это удалить одну из кавычек. Это имеет смысл, поскольку это делает xml недействительным. К сожалению, Tomcat не регистрирует ошибки такого рода.

0
ответ дан 11 July 2020 в 00:15

Теги

Похожие вопросы