为什么Apache SVN存储库列表显示为空?

时间:2019-05-14 14:48:40

标签: apache svn

我正在从Windows计算机上的Visual SVN迁移到通过Linux计算机上的Apache服务的SVN。到目前为止,大部分成功。如果将单个存储库的完整URL放入Web浏览器中,则可以在多台计算机上通过命令行svn访问存储库并浏览存储库内容。它也正确地需要身份验证。

但是,当我在浏览器中转到根目录(/svn)时,会得到存储库的 empty 列表。我在互联网上找到了很多关于列表被阻止的帖子,即您收到的是HTTP 403而不是列表,但这不是我的情况。我正在获取列表-它恰好是空的。在浏览器中,该页面显示为格式正确的页面,<ul></ul>标记之间没有任何内容,该页面将包含该内容,并且在Apache日志中显示为给出的成功(HTTP 200)响应。

所以问题是为什么会发生这种情况以及如何解决?

配置:

<VirtualHost *:80>
        ServerName svn.example.com
        Alias /svn /var/lib/svn
        <Location /svn>
                DAV svn
                SVNParentPath "/var/lib/svn/"
                SVNListParentPath On
                AuthType Basic
                AuthName "My Software Repository"
                AuthUserFile /etc/apache2/dav_svn.passwd
                Require valid-user
        </Location>
        RedirectMatch ^/$ /svn
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

此计算机上有多个虚拟主机。我只显示了SVN主机的部分。

这是我在浏览器中导航到svn.example.com/svn(身份验证后)时返回的HTML:

<html><head><title>Collection of Repositories</title></head>
<body>
 <h2>Collection of Repositories</h2>
 <ul>
 </ul>
 <hr noshade><em>Powered by <a href="http://subversion.apache.org/">Apache Subversion</a> version 1.9.5 (r1770682).</em>
</body></html>

在添加SVNListParentPath on部分之前,我将收到一个HTTP 403,并且要强调的是,我在这里和其他地方经常看到这种情况。但这不是我的情况。

1 个答案:

答案 0 :(得分:0)

删除Alias /svn /var/lib/svn行似乎已解决了该问题,而没有引起任何新的问题。

我偶然发现这是与“重定向周期”有关的,该问题可以通过另一个与此无关的问题的答案之一来解决:What is the cause of "svn: E195019: Redirect cycle detected for URL"?