【问题标题】:403 access denied on tomcat 7.0.42Tomcat 7.0.42 上的 403 访问被拒绝
【发布时间】:2013-10-19 23:25:51
【问题描述】:

我在访问 Tomcat Manager 应用程序时遇到错误403 access denied on tomcat 7.0.42

这就是我在 tomcat-user.xml 文件中的内容。 我曾多次尝试更换角色,但没有成功。

注意:- 我从 NetBeans 7.3.1 启动/停止 tomcat

<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users>
 <role rolename="manager-script"/>
<user username="admin" password="admin" roles="manager-script" />
</tomcat-users>

【问题讨论】:

  • 我认为角色应该是 manager-ui(假设您正在从浏览器访问 manager 应用程序_。

标签: java apache tomcat netbeans


【解决方案1】:

删除管理器脚本并添加“manager-gui,manager-status”。

要访问 HTML 界面,您需要拥有 manager-gui 角色,但不能拥有 manager-script 或 manager-jmx 角色。

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

来自http://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html的一些关于角色的信息

  • manager-gui — 访问 HTML 界面。
  • manager-status - 只能访问“服务器状态”页面。
  • manager-script — 访问本文档中描述的工具友好的纯文本界面,以及“服务器 状态”页面。
  • manager-jmx — 访问 JMX 代理接口和“服务器状态”页面。

【讨论】:

  • 您可以在同一个用户中拥有所有角色。来自http://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html如果您使用具有 manager-script 或 manager-jmx 角色的用户使用 Web 浏览器访问 Manager 应用程序(例如,用于测试纯文本或 JMX 接口),您必须关闭所有窗口之后浏览器终止会话.... 建议永远不要将 manager-script 或 manager-jmx 角色授予具有 manager-gui 角色的用户。
  • 对我来说(使用 Eclipse)不起作用。 tomcat 惹我生气>:(
  • manager-status 角色在提供的示例中是无用的,因为它被任何其余角色暗示(参见application descriptor)。
【解决方案2】:

虽然answer已经是正确答案,但我想也许有人会对“manager-script”的用法感到困惑。

“manager-script”用于在不使用网页的情况下访问 Tomcat Manager API。

例如,以下命令用于请求取消部署功能,而不是单击 Tomcat Manager Web 应用程序上的取消部署按钮。

curl http://localhost:8080/manager/text/undeploy?path=/app_name

【讨论】:

  • 接受的答案实际上并未将tomcat 用户添加到manager-script 角色中,
【解决方案3】:

我在ubuntu上绑定了tomcat7,发现如果你这样配置:

<user username="admin1" password="admin1" roles="manager-gui,manager-jmx,manager-script,manager-status,admin-gui,admin-script"/>
<user username="admin2" password="admin2" roles="admin-gui,admin-script,manager-gui,manager-jmx,manager-script,manager-status"/>

admin1 可以正常工作,但 admin2 没有访问权限。 看来角色的顺序很重要。

【讨论】:

    【解决方案4】:
    <role rolename="manager"/>
    <role rolename="admin"/>
    <user username="admin" password="admin" roles="manager-gui,manager-status"/>
    

    将这些添加到tomcat-users.xml的末尾,在位于conf文件夹内的标记之前。

    【讨论】:

      猜你喜欢
      • 2017-03-23
      • 2015-09-07
      • 1970-01-01
      • 1970-01-01
      • 2018-07-19
      • 2011-09-27
      • 1970-01-01
      • 2017-06-12
      • 1970-01-01
      相关资源
      最近更新 更多