1. 程式人生 > >tomcat 中的 tomcat-users.xml 配置不生效原因 + tomcat8以上管理頁面提示403問題解決方案

tomcat 中的 tomcat-users.xml 配置不生效原因 + tomcat8以上管理頁面提示403問題解決方案

首先確定在conf目錄下的server.xml檔案有
  <GlobalNamingResources>
    <!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users
    -->
    <Resource auth="Container" description="User database that can be updated and saved" 
factory="org.apache.catalina.users.MemoryUserDatabaseFactory" name="UserDatabase" 

pathname="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase"/>
  </GlobalNamingResources>

這樣一段程式碼,讓tomcat啟動服務後能載入到conf/tomcat-users.xml,這個檔案。

user配置

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

修改了配置檔案需要重新啟動伺服器,好讓伺服器重新載入修改後的配置檔案。

tomcat8以上管理頁面提示403問題

修改conf/tomcat-users.xml

<role rolename="manager"/>

<role rolename="manager-gui"/>
<role rolename="admin"/>

<user username="user" password="password" roles="admin,manager,manager-gui"/>

同時還需要修改,如無新建conf/Catalina/localhost/manager.xml 內容如下:

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

無須重啟tomcat即可生效。