2008-08-20 4 views
8

Windows 서버에 VisualSVN Server이 설치되어 있으며 여러 저장소가 있습니다.VisualSVN Server가 설치된 WebSVN은 누구나 작동하도록 인증을 받았습니까?

VisualSVN 서버에 내장 된 웹 뷰어는 최소한의 Subversion 브라우저이므로 WebSVN을 내 리포지토리 위에 설치하고 싶습니다.

그러나 문제는 인증이 작동하지 않는 것 같습니다. 이상 적으로 WebSVN에서 작동하는 VisualSVN에 지정된대로 현재 저장소 인증을 원합니다. WebSVN의 모든 저장소 이름을 볼 수는 있지만 올바른 자격 증명 없이는 실제로 찾아 볼 수 없습니다.

this google query에있는 최상위 링크의 캐시 된 복사본을 방문하면 지금까지 내가봤을 때 유망 해 보이는 것을 볼 수 있습니다.
내가있는 PHP 파일 중 하나에 내가 압정 수있는 몇 가지 PHP 함수를 찾을 수있다

(주 블로그 페이지가 파괴 된 것으로 보인다, 내가 말하는 겁니다 최상위 페이지의 도메인은 the-wizzard.de입니다) WebSVN. 나는 그곳에서 수정을 따라 갔지만, WebSVN이 사용자 이름과 암호를 물어 보았습니다. 입력 한 내용에 상관없이 나를 받아 들일 수는 없습니다.

불행히도 php와 apache는 대체로 흑 마법입니다. 나에게.

그렇다면 누구나 WebSVN을 VisualSVN 호스팅 리포지토리에 성공적으로 통합 시켰습니까?

답변

3

VisualSVN Server를 사용하고 있으며 Trac 설치가 끝났습니다. 저의 목표는 더 나은 웹 기반 저장소 브라우저를 얻는 것이 었습니다. Trac은 확실히 Subversion에서 더 나은 점 중 하나입니다. http://www.visualsvn.com/server/trac/ 설치로 이동하면 설치가 매우 간단합니다. 예, Trac에는 티켓 추적 기능과 위키 시스템이 있습니다.이 도구는 찾고자하지 않을 수도 있지만 리포지토리와 로그 브라우저에서 판매합니다.

지금, 나는 단순히 trac.ini 구성 파일의 끝에

[components] 
trac.ticket.* = disabled 
trac.wiki.* = disabled 

를 추가를 통해 Trac에 함께 제공되는 위키 티켓 추적 시스템을 사용하지 않도록 설정하는 것이 가능하다는 것을 발견했다. 이로 인해 위키의 시작 페이지에 wiki 모듈을 찾을 수 없다는 오류가 발생하여 시작할 때 타임 라인 (로그보기) 또는 저장소 브라우저에서 Trac을 열도록 설정해야합니다. 나는 autho의 생각

default_handler = BrowserModule 
+0

"Trac의 플러그인은 VisualSVN 서버의 오래된 버전을 사용할 수 있으며, 현재 우리는 플러그인을 업데이트 할 계획은 없습니다를 정기적으로 "--- 최신 버전의 VisualSVN에서 작동합니까? – gbjbaanb

+0

VisualSVN Server v 1.6.3을 사용하고 있는데, 이해하기에 가장 최신 버전의 VisualSVN Server입니다. Trac 플러그인은 현재 나에게 예상대로 작동합니다. 그러나 VisualSVN 서버 자체를 업그레이드 할 때 Trac 설정 단계 중 일부를 반복해야한다고 지적해야합니다. –

+0

VisualSVN이 Trac 플러그인으로 계속 노력할 계획이 없다는 사실에 낙담합니다. 저장소의 접근성을 확장하는 데 매우 유용한 도구로 입증되었습니다 (기본 VisualSVN 서버의 웹 기반 저장소 브라우저는 너무 제한적입니다).) –

0

기본값으로 저장소 브라우저의 기본

default_handler = TimelineModule 

으로 로그 타임 라인

다음 [trac] 제목 아래 다음 당신이 언급 한 기사의 r. 내가 게시 한 정보는 IIS에서 실행되는 WebSVN에만 해당됩니다. 그 소프트웨어가 아파치에서 PHP를 사용할 때 "그저 작동"해야한다는 것을 이해합니다. 정확한 "인증"이 실패한 곳을 확인하기 위해 "에코"(더 나은 용어가없는 경우)를 시도해 보셨습니까?

7

나는 해킹/시행 착오를 거친 사용자 지정이 많았지 만 VisualSVN 서버에서 작동하는 WebSVN 인증을 받았습니다.

  1. 당신이 이미하지 않은 경우, zip 파일을 다운로드 및 설치 지시 온라인 PHP 매뉴얼을 통해 이동하여 수동으로 PHP를 설치 :

    여기에 어떻게 내가 해냈어. 나는 C에 PHP를 설치 : \ PHP에게

  2. 을 C로 WebSVN에 폴더에 압축을 풉니 다 : \ 프로그램 파일 \ VisualSVN 서버 \ htdocs에

  3. 은 즉, WebSVN에 디렉토리를 구성하는 단계를 통해 이동에 configdist.php의 이름을 변경 \ config 등등. 내 저장소는 C : \ SVNRepositories에 위치하여 인증 파일을 구성하기 위해 config.php 줄을 다음과 같이 설정합니다. $ config-> useAuthenticationFile ('C :/SVNRepositories/authz'); // 글로벌 액세스 파일

  4. 는 C에 다음을 추가 : \ 프로그램 파일 \ VisualSVN 서버 \ conf의 \ 아파치 - custom.conf :

 
# For PHP 5 do something like this: 
LoadModule php5_module "c:/php/php5apache2_2.dll" 
AddType application/x-httpd-php .php 


# configure the path to php.ini 
PHPIniDir "C:/php" 

<IfModule dir_module> 
    DirectoryIndex index.html index.php 
</IfModule> 

<Location /websvn/> 
    Options FollowSymLinks 
    AuthType Basic 
    AuthName "Subversion Repository" 
    Require valid-user 
    AuthUserFile "C:/SVNRepositories/htpasswd" 
    AuthzSVNAccessFile "C:/SVNRepositories/authz" 
    SVNListParentPath on 
    SVNParentPath "C:/SVNRepositories/" 
</Location> 

이 나를 위해 일을하고, WebSVN에 만 것입니다 지정된 사용자에 대해 권한이 부여 된 디렉토리를 표시하십시오. 제대로 작동하려면 모든 사용자에게 "주 수준"액세스 권한을 부여한 다음 특정 사용자의 특정 하위 디렉토리에 대한 액세스를 비활성화해야합니다. 예를 들어 주 수준 액세스 권한이 없지만 하위 수준에 대한 액세스 권한이있는 사용자가 있습니다. 불행히도이 사람은 websvn에서 아무것도 볼 수 없습니다. 그가 직접 파일을 filedetails.php에 링크하여 볼 권한이있는 파일이 있더라도 말이죠. 필자는 어쨌든 websvn에 액세스하지 않기를 원하기 때문에 큰 문제는 아니지만 알고 싶을 것입니다.

또한 서버를 SSL 연결로 설정하기 때문에 일단 설정하면 주소는 일반 http : //가 아닌 https : // 주소가됩니다.

+0

고마워, 오늘 밤 이걸 시험해 보자. –

+1

대단하다! 당신의 지시에 불과 몇 노트. (1) 아마도 분명하지만, 위의 단계를 수행 한 후에 VisualSVN 서비스를 다시 시작해야합니다. (2) https vs http는 보안 (https) 액세스를 위해 VisualSVN이 구성되었는지 여부에 따라 다릅니다. 당신이 표준 http를 위해 그것을 설정했다면, 이것은 영향을 미치지 않을 것입니다. 당신은 여전히 ​​http를 통해 SVN과 WebSVN에 접근 할 것입니다. 감사 합니다만, 이것은 내가 찾고있는 것입니다. –

+0

이 지침에 대한 추가 정보 : 다른 인증 설정을 사용하는 경우 '위치'섹션이 @ anthony-johnson과 약간 다를 수 있습니다. 'httpd.conf'에서' '으로 시작하는 섹션을 복사해서 (PHP 설정 섹션을 포함해서)'httpd-custom.conf'에 붙여 넣고'/ svn /'을'/websvn /'. 모든 것이 잘 작동합니다! 사이드 노트, Subversion-VisualSVN-WebSVN-Jenkins 스택을 구성하는 경우 [this] (http://stackoverflow.com/q/5564014/385094)도 알고 있어야합니다. – Boinst

1

Windows 인증 (실제로는 AuthType VisualSVN)과 함께 작동하도록했습니다. 트릭은 svn auth를 주석 처리하고이를 주 구성 파일에있는 인증 텍스트와 동일한 종류로 대체하는 것입니다. Anthony Johnson에게 감사의 말을 전합니다.

# For PHP 5 do something like this: 
LoadModule php5_module "F:/wamp/bin/php/php5.3.0/php5apache2_2.dll" 
AddType application/x-httpd-php .php 


# configure the path to php.ini 
PHPIniDir "f:/wamp/bin/php/php5.3.0/" 

<IfModule dir_module> 
    DirectoryIndex index.html index.php 
</IfModule> 

#Alias /websvn/ "F:/Program Files/VisualSVN Server/htdocs/websvn-2.3.1/" 

<Location /websvn-2.3.1/> 
    Options FollowSymLinks 

    AuthName "Subversion Repositories" 
    AuthType VisualSVN 
    AuthzVisualSVNAccessFile "F:/Repositories/authz-windows" 
    AuthnVisualSVNBasic on 
    AuthnVisualSVNIntegrated off 
    AuthnVisualSVNUPN Off 
    Require valid-user 


    SVNListParentPath on 
    SVNParentPath "f:/Repositories/" 
</Location> 
0

하는 것은 더 풍부한 기능의 기본 하나보다 웹 기반 저장소 브라우저를 찾고 있습니다 당신은 VisualSVN Server를 사용하는 경우, 다음 VisualSVN 서버 3.2 이상으로 업그레이드하십시오.

VisualSVN Server has a rich web interface for Subversion repositories. WebSVN과 달리 VisualSVN 서버의 내장 웹 클라이언트는 기본적으로 작동하므로 관리자가 구성 작업을 수행 할 필요가 없습니다.

당신은 여기에 라이브 데모를 볼 수 있습니다 http://demo-server.visualsvn.com/!/

Subversion web user interface in VisualSVN Server

관련 문제