web-dev-qa-db-ja.com

Apacheのsubversion-チェックアウトに失敗しました:405メソッドは許可されていません

ApacheサーバーでSubversionをセットアップしようとしています。私はこのガイドに従いました:[ http://wiki.centos.org/HowTos/Subversion] [1]

後でTortoiseSVNプロジェクトをチェックアウトしようとすると、次のエラーが発生します。

Unexpected HTTP status 405 'Method Not Allowed' on '/repos

Linuxサーバー自体でsvnクライアントを使用しようとすると、次のエラーが発生します。

svn: Server sent unexpected return value (405 Method Not Allowed) in response to OPTIONS request for 'https://server.ch/repos'

Apacheサーバーでの現在の構成は次のようになります。

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so

<VirtualHost *:443>
...
  <Directory "/var/www/svn/">
    Order allow,deny
    Allow from all
    AllowOverride all
    AuthType Basic
    AuthName "Authorization Realm"
    AuthUserFile /etc/Subversion/svn-auth-conf
    Require valid-user
  </Directory>
  <Location /repos>
    DAV svn
    SVNParentPath /var/www/svn/repos
    SVNListParentPath on
    SSLRequireSSL
    AuthType Basic
    AuthName "Authorization Realm"
    AuthUserFile /etc/Subversion/svn-auth-conf
    Require valid-user
  </Location>
</VirtualHost>

事前に提案や助けをありがとう

マークに関して

1
user1473223

問題が見つかりました。ロケーションとSVNParentPathが誤って設定されています。私はここで解決策に従いました[ http://www.wandisco.com/svnforum/threads/35525-Stuck-with-error-%E2%80%9C405-Method-Not-Allowed%E2%80%9D ] [1]

apacheの正しい設定は次のようになります。

<VirtualHost *:443>
  ...
  <Location /svn>
    DAV svn
    SVNParentPath /var/www/svn
    SVNListParentPath on
    SSLRequireSSL
    AuthType Basic
    AuthName "Authorization Realm"
    AuthUserFile /etc/Subversion/svn-auth-conf
    Require valid-user
  </Location>
</VirtualHost>
2
user1473223

Apache構成のどこかで、SVNが使用するこのOPTIONSメソッドを無効にします。このメソッドは<Directory "/var/www/svn/">内で有効にできます

<Directory "/var/www/svn/">
   ...other config here
   <Limit OPTIONS>
      Order Deny,Allow
      Allow from all
    </Limit>
   ...other config here
 </Directory>

このメソッドを有効にするには、セキュリティへの影響を知っておく必要があります。 SVNで使用されるすべてのHTTPメソッドについては、 公式ドキュメント を参照してください。

0
masegaloeh