Tomcat 6.0.18 中无法登录管理器应用程序

Tomcat 6.0.18 中无法登录管理器应用程序

各位朋友,

我无法登录 Tomcat 中的管理器应用程序 (localhost:8080/manager/html)。更具体地说,它要求我输入用户名和密码,而那些应该正确的用户名和密码却不被接受。以下是我已经检查过的内容:

  • 我尝试编辑 conf/tomcat-users.xml 来添加我的用户/角色。以下是该文件的当前内容:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
    <role rolename="manager"/>
    <user username="tomcat" password="s3cret" roles="manager"/>
</tomcat-users>
  • 我想也许它不是在查找这个 XML,而是在其他地方。所以,我了解到领域。我的配置的 Realm 部分现在是:

< Realm className="org.apache.catalina.realm.MemoryRealm" />

(请忽略 Realm 之前的空格,由于某种原因,该网站不接受文字标签)

我错过了什么?

答案1

我为此苦苦思索了一段时间,然后突然意识到默认的 tomcat-users.xml 文件中的用户示例列表已被 XML 注释掉!

答案2

我见过数百个这样的案例,而且几乎总是与注释行的答案相同。对于新手来说,注释行开头是“< ! - - ”行,末尾是“- - >”行。我不得不在其中添加空格,因为这个该死的编辑器试图注释掉它们之间的所有内容。非常方便。然后执行:sudo /etc/init.d/tomcat6 restart,以便它获取更改,然后,瞧!它就成功了。由于 tomcat/tomcat 已经在那里,您所要做的就是删除这两行注释,重新启动,然后 tomcat/tomcat 就可以正常工作了(假设它在您的文件中具有管理器角色)。

答案3

尝试关闭 tomcat 安全管理器,重新启动 tomcat,看看是否允许您登录。我在设置 tomcat 时必须执行类似的操作。

答案4

这可能太晚了,无法帮到你,但我偶然发现你的问题时也遇到了同样的问题。虽然文档说你可以简单地使用文件的默认位置tomcat-users.xml,但我发现它实际上似乎不起作用。

尝试像这样指定文件位置:

<Realm className="org.apache.catalina.realm.MemoryRealm" pathname="conf/tomcat-users.xml"/>

看看你是否能成功。

相关内容