apache - SVN 重定向周期

标签 apache svn centos repository

所以我在我的 centos 6.5 版本 1.6.11 上安装了 SVN
我试图在/var/www/html/svn/testrepo 中配置它将是我的存储库,
所以我在谷歌找到了很多指南,并使用了所有这些指南来尝试做到这一点,
这是我的 subversion.conf

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

#
# Example configuration to enable HTTP access for a directory
# containing Subversion repositories, "/var/www/svn".  Each repository
# must be both:
#
#   a) readable and writable by the 'apache' user, and
#
#   b) labelled with the 'httpd_sys_content_t' context if using
#   SELinux
#
#
# To create a new repository "http://localhost/repos/stuff" using
# this configuration, run as root:
#
#   # cd /var/www/svn
#   # svnadmin create stuff
#   # chown -R apache.apache stuff
#   # chcon -R -t httpd_sys_content_t stuff
#


<Location /unixmen1>
   DAV svn
   SVNParentPath /var/www/html/svn
# Require SSL connection for password protection.
# SSLRequireSSL

      AuthType Basic
      AuthName "Subversion repos"
      AuthUserFile /etc/svn-auth-users
      Require valid-user

</Location>

现在我检查了,我发现/etc/svn-pass 和/etc/svn-auth-users 是一样的......
我也没有在/var/中看到 svn 文件夹,这很奇怪,因为它显示在所有指南中,
我试过那些指南:
http://www.if-not-true-then-false.com/2010/install-svn-subversion-server-on-fedora-centos-red-hat-rhel/

https://wiki.centos.org/HowTos/Subversion

只是想不通我到底做错了什么……
顺便说一句,这是我第一次尝试设置 svn ...

编辑:

现在,在我玩了一会儿之后,我可以通过浏览器访问整个目录,但我无法使用 tortoiseSVN 连接到 repo,我收到重定向周期错误
httpd/access 日志说:
 192.168.1.36 - - [19/Nov/2015:14:44:19 +0200] "OPTIONS /svn/unixmen1 HTTP/1.1" 301 319 "-" "SVN/1.9.2 (x64-microsoft-windows) 
serf/1.3.8 TortoiseSVN-1.9.2.26806"

这是在错误日志中:
    [Thu Nov 19 14:40:38 2015] [notice] Apache/2.2.15 (Unix) DAV/2 SVN/1.6.11 configured -- resuming normal operations
[Thu Nov 19 14:44:04 2015] [notice] caught SIGTERM, shutting down
[Thu Nov 19 14:44:09 2015] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Thu Nov 19 14:44:09 2015] [notice] Digest: generating secret for digest authentication ...
[Thu Nov 19 14:44:09 2015] [notice] Digest: done
[Thu Nov 19 14:44:09 2015] [notice] Apache/2.2.15 (Unix) DAV/2 SVN/1.6.11 configured -- resuming normal operations

我也更改了 subversion.conf 文件(编辑了上面的文件)
etc/svn-auth-users 有 1 个用户,但 svn 甚至不需要凭据,只是说 URL 有一个重定向周期:
192.168.1.14/svn/unixmen1
[root@SVN svn]# cd /var/www/html/svn/unixmen1/
[root@SVN unixmen1]# ls -als
total 36
4 drwxr-xr-x 7 apache apache 4096 Nov 19 12:43 .
4 drwxr-xr-x 3 root   root   4096 Nov 19 09:47 ..
4 drwxr-xr-x 2 apache apache 4096 Nov 19 09:47 conf
4 drwxr-sr-x 6 apache apache 4096 Nov 19 09:47 db
4 -r--r--r-- 1 apache apache    2 Nov 19 09:47 format
4 drwxr-xr-x 2 apache apache 4096 Nov 19 09:47 hooks
4 drwxr-xr-x 2 apache apache 4096 Nov 19 09:47 locks
4 drwxr-xr-x 2 root   root   4096 Nov 19 12:43 project1
4 -rw-r--r-- 1 apache apache  229 Nov 19 09:47 README.txt
[root@SVN unixmen1]#

如果有人可以帮助我,我将不胜感激。

最佳答案

  • 显示 DocumentRoot对于 Apache 的主机。我想,它低于 /var/www/html/svn/这是一个大错误
  • 我看到了cd /var/www/html/svn/unixmen1/ ,即 虚拟 来自 <Location> 的路径作为真实的物理路径存在(甚至在 DocumentRoot 内部??? - 参见第 1 页) - 这是巨大的 NO-NO

  • Apache 服务的 SVN-repos 的通用规则(草稿)
  • 存储库放置在 web-root 之外的任何位置
  • DAV-Location 不作为 DocumentRoot 中的真实路径存在(唯一名称)
  • SVNParentPath 用于为具有公共(public) 1-st 父级的存储库系列提供服务,SVNPath - 用于提供单个 repo

  • 即,fe:
  • var/repos/Name1 ... var/repos/NameN是存储库的路径
  • var/www/html是 DocumentRoot
  • 存储库的 URL 必须是 smth。喜欢 http://HOST/repositories/NameX

  • 您的配置将是(相关部分)
    # if mod_dav was compiled as a shared object (instead of statically linked)
    LoadModule dav_module         modules/mod_dav.so
    LoadModule
    LoadModule 
    ...
    <Location /repositories>
       ...
       SVNParentPath /var/repos/
       ...
    </Location>
    

    关于apache - SVN 重定向周期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33799788/

    相关文章:

    apache - 使用现有 Apache 安装 Subversion Edge

    svn - 如何在命令行中跨多个外部执行单个 SVN 提交?

    service - start <service> 和 service <service> start 有什么区别

    java - Apache Cayenne - 我找不到定义 Token.kind 字段常量的代码

    windows - Apache 轮换访问和错误日​​志 Windows

    Javascript 模板不运行以 '}' 开头的 : SyntaxError: unexpected garbage after function body,

    svn - GIT和SVN在 merge 冲突解决上有什么区别

    php - 如何让apache2用户访问/root目录下的文件?

    python - 如何在 linux (CentOS) 上构建 pgmagick?

    python - bash:mkvirtualenv:找不到命令