安装 apache 和 SVN

安装 apache 和 SVN

当我想要运行 SVN 时,我遇到了一个问题,我已经探索了所有相关问题,但我不明白我的情况出了什么问题。所以我决定在这里发布我的问题,请帮我仔细检查所有的步骤。

我正在使用 Apache 版本 2.0,我的 SVN 版本是 1.4。

我收到:“禁止访问您无权访问此服务器上的 /svn/。”当我输入

 http://localhost/svn/

在我的電腦中。

禁止您无权访问此服务器上的 /svn/。


Apache/2.0.64 (Win32) SVN/1.4.0 DAV/2 服务器位于本地主机端口 80

我已经基于以下设置了我的 apache 和 SVN 服务器这里但我不知道我的设置出了什么问题,导致我收到权限拒绝错误消息。我希望有人能帮我检查一下我的工作,找出问题的根本原因。

我的httpd.conf:

<Location /svn/>
    DAV svn
    SVNParentPath c:/svnroot/ 
    SVNListParentPath on
    AuthzSVNAccessFile bin/apachesvnauth 

    AuthType Basic 
    AuthName "Subversion repository" 
    AuthUserFile bin/apachesvnpasswd 

    Require valid-user                                 </Location>

我的身份验证文件。

[/]
* = r 

[test1:/] 
user1 = rw 
user2 

[test2:/] 
user1 = r 
user2 = rw

如果您需要更多信息,请随时通知我,以便我与您分享。我使用的是 Windows XP。还有一件事,我已经将 SVN 和存储库文件夹的所有读写权限也分配给了自己的用户。

我的 apache 日志如下:

> [Wed Apr 10 15:49:34 2013] [notice] Server built: Oct 18 2010 01:36:23
> [Wed Apr 10 15:49:34 2013] [notice] Parent: Created child process 1656
> [Wed Apr 10 15:49:35 2013] [notice] Child 1656: Child process is
> running [Wed Apr 10 15:49:35 2013] [notice] Child 1656: Acquired the
> start mutex. [Wed Apr 10 15:49:35 2013] [notice] Child 1656: Starting
> 250 worker threads. [Wed Apr 10 15:49:48 2013] [error] [client
> 10.8.8.139] Access denied: 'user1' GET svn:/

答案1

在您的<Location /svn/>块中,添加Order allow,denyAllow from all

答案2

  1. 如果你的服务器是 Windows 主机(正如我从SVNParentPath字符串中看到的),则写入完整路径(非相对)至 AuthzSVNAccessFile|AuthUserFile
  2. Satisfy any您可以通过将(临时)添加到位置容器来测试对存储库的匿名访问
  3. 如果您希望在配置中有明确的访问规则(而缺失意味着Allow from allAFAICR),并且字符串也指向位置容器,而不是目录
  4. 通过访问测试配置

    • 存储库,不是存储库根目录
    • 经过SVN客户端,而不是浏览器(您将一次性看到所有可能出现的问题)

5.修复 test1 repo 中的 user2,使用正确的行格式

相关内容