Apache에서의 전복 - 체크아웃 실패: 405 메소드가 허용되지 않음

Apache에서의 전복 - 체크아웃 실패: 405 메소드가 허용되지 않음

아파치 서버에 Subversion을 설정하려고 합니다. 나는 이 가이드를 따랐습니다: [http://wiki.centos.org/HowTos/Subversion][1]

나중에 Tortoise SVN 프로젝트로 체크아웃하려고 하면 다음 오류가 발생합니다.

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

문제를 발견했습니다. Location 및 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

Apache 구성 어딘가에서 OPTIONSSVN에서 사용하는 이 방법을 비활성화합니다. 내부에서 이 방법을 활성화할 수 있습니다.<Directory "/var/www/svn/">

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

이 METHOD를 활성화하려면 어떤 보안 의미가 있는지 알아야 합니다. SVN에서 사용하는 모든 HTTP 메소드에 대해서는 다음을 참조하세요.공식 문서.

관련 정보