8

Tomcat7.0.34の新しいインストールでmanager/deployを機能させようとしていますが、でPUTを実行してデプロイしようとすると、403が発生し続けhttp://localhost:8080/manager/deployます。これはTomcat7ではまだ機能していません。

conf / server.xml

<?xml version='1.0' encoding='utf-8'?>
<Server>
...
  <GlobalNamingResources>
    <Resource name="UserDatabase" auth="Container"
          type="org.apache.catalina.UserDatabase"
          description="User database that can be updated and saved"
          factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
          pathname="conf/tomcat-users.xml" />
  </GlobalNamingResources>
  <Service>
  ...
    <Engine>
    ...
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
           resourceName="UserDatabase"/>
    </Engine>
  </Service>
</Server>

conf / tomcat-users.xml

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
    <user username="tomcat" password="redacted" roles="manager-script"/>
</tomcat-users>

私も試しました(同じ結果で)

conf / tomcat-users.xml

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

はい、tomcat-users.xmlで定義されているように、正しいユーザー名とパスワードを使用していることを2回、3回、4回チェックしました。必要なのはこれだけだと思いました。何か案は?

4

2 に答える 2

9

それで、私はついにそれを理解しました!

まず、上記のすべての設定が正しいです(上記のtomcat-usersのどちらのバージョンも正しいですが、最初の設定の方が正しいと思います。

元々は明確ではなかったかもしれませんが、Tomcat 6から移行していました。欠落していたのは、PUTを実行していたURLでした。それはすべきだった: http://localhost:8080/manager/**text**/deploy

今ではすべてがうまく機能しています。これが将来誰かに役立つことを願っています:)

于 2013-01-08T22:12:00.990 に答える
0

最初のものが最良の解決策です。私はこの問題に直面し、tomcat-users.xmlファイルに次の行を追加することで解決しました。

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
    <user username="tomcat" password="redacted" roles="manager-script"/>
</tomcat-users>
于 2018-10-29T10:46:11.113 に答える