2009-10-15 4 views
3

내 Windows SVN 클라이언트 (TortoiseSVN)에서 .htaccess 파일을 커밋 할 수 없습니다. 반환 된 오류는 다음과 같습니다.Subversion이 .htaccess 파일을 커밋 할 수없는 이유는 무엇입니까?

상태 줄을 읽을 수 없습니다 : 원격 호스트에서 기존 연결을 강제로 닫았습니다.

<VirtualHost *:80> 
    DocumentRoot /var/www/mydomain.com/legacy/trunk/html 
    ServerName mydomain.com 

    <Directory /var/www/> 
    FileETag MTime Size 
    AllowOverride All 
    </Directory> 

    <Directory /var/www/tools> 
    AllowOverride All 
    </Directory> 

    <Location /svn> 
    DAV svn 
    SVNPath /var/svn/repos/MyRepo 

    # Limit write permission to list of valid users. 
    # Require SSL connection for password protection. 
    # SSLRequireSSL 
    ErrorDocument 404 default 

    AuthType Basic 
    AuthName "Authorization Realm" 
    AuthUserFile /etc/httpd/conf/.htpasswd 
    Require valid-user 
    </Location> 
</VirtualHost> 

방법이 변경 될 수 있습니다, .htaccess 파일이 커밋 될 수 있도록 : 여기

그리고 내 가상 호스트 아파치에 어떻게 생겼는지 기본적으로?

+0

명령 줄에서 작성한 내용이 정상적으로 작동한다는 것을 추가해야합니다. – user38968

+0

Rackspace에 연락하여 기술 전문가가 문제를 해결하는 데 도움이되는지 확인했습니다. 그들은 지금까지 매우 도움이되었습니다. – user38968

답변

1

Subversion은 액세스 제어를 위해 .htaccess도 사용하는 Apache 서버에서 제공되기 때문에 사용자가 의도하지 않은 것을 수행하지 못하게 될 수 있습니다.

+0

하지만 질문은 ... – user38968

0

아파치 오류 로그 파일을 확인하십시오. svn 서버가 커밋을 완료하지 못한 이유에 대한 추가 정보를 볼 수 있습니다.

+0

오류 로그에는 아무 것도 없습니다. – user38968

0

다른 apache 설정 파일을 확인하십시오. 기본적으로 /etc/apache2/modules.d/00_default_settings.conf (젠투 설치시)에는 FilesMatch "^.ht" 부분에 Deny from all이 있습니다.

나는/etc/apache 또는/etc/httpd 또는/etc/apache 디렉토리에서 grep -r -i "\\.ht" *을 실행하여 어떤 것을 생각해내는 지 제안합니다.

AccessFileName 지시어 일 수도 있으므로 grep도 마찬가지입니다.

+1

전역 수준에서 .htaccess 파일을 제공하는 것이 실제로 권장되지 않습니다. 서버가 리포지토리 만 호스팅하는 경우이 방법이 유용 할 수 있습니다. 그러나 일반 웹 사이트가있는 경우에는 어떻게해야합니까? –

+0

아주 사실입니다. =) – leander

+0

죄송합니다. 가능한 보안 위반에 대해 다운 투표해야했습니다. –

0

다른 파일이 TortoiseSVN에서 커밋되고 있습니까?

동일한 작업 복사본 (확인할 수 있습니까?) TortoiseSVN 같은 상자에있는 SVN 클라이언트에서 커밋이 작동하는 경우 내 추측 문제를 일으키는 다른 SVN 및 TortoiseSVN 클라이언트 버전이 될 것입니다.

TortoiseSVN -> About은 (는) 작성된 SVN 클라이언트 버전을보고합니다. 클라이언트/서버 버전이 compatible인지 확인하십시오.

+0

예, 다른 모든 파일은 정상적으로 처리되는 것으로 보입니다. 서버는 svn 버전 1.4.2를 사용하고 있습니다. Turtoise는 TortoiseSVN 1.6.5, Build 16974의 최신 버전을 사용하고 있습니다. 여기에 상충되는 점이 있습니까? – user38968

+0

다른 파일이 확인을 커밋하는 경우 클라이언트 버전이 아닐 수도 있습니다 (다른 사소한 버전 임에도 불구하고) ... 명백하게 제거하려고합니다. – si618

5

그냥 그 문제를 해결하는 방법을 발견 - 글로벌하여 http.conf를 오버라이드 (override) 그냥 순서대로 가상 호스트 설정에이를 넣어 :

<Files ~ "^\.ht"> 
    Order allow,deny 
    Allow from all 
    Satisfy All 
</Files> 

Source

이것은 확실히 정답입니다 (그 질문을 포기했다./

+0

아마 나를위한 새로운 서버! repo, couldnt 커밋 .htaccess 파일. +1 – Anil

+0

위의 줄을 내 에 그 태그의 자식으로 추가했지만 .htaccess 파일을 커밋하지 못하게했습니다. – am17torres

+0

나를 위해 완벽하게 작업했습니다. 감사! –

0
<Files ~ "^\.ht"> 
    Order allow,deny 
    Allow from all 
    Satisfy All 
</Files> 

이것은 나를 위해 일했다. 약간의 복잡성으로 plesk 서버에서이 작업을 수행했습니다. 나는 conf의 재 구축하려면 다음을 달렸다

/var/www/vhosts/system/[your domain]/conf 

에서 만든 내 가상 호스트 파일에 줄 위에 추가 한 후

/usr/local/psa/admin/sbin/httpdmng --reconfigure-domain [your domain] 

를 파일과 COMIT 일했다!

감사합니다. plesk를 사용하는 사람들에게 도움이되기를 바랍니다.