为 SVN SSL 配置 apache

为 SVN SSL 配置 apache

我的 Apache 配置存在问题,特别是它如何与 SVN DAV mod 交互。

我想要做的是指向domain.com我的网站,svn.domain.com指向我的 svn 目录(当前位于我的 public_html 目录之外),并且两者都可以通过 https 访问。

我已经让它大部分工作了,但是如果我为svn子域设置了一个明确的 VirtualHost,它会阻止 svn 应用程序访问存储库(而只是收到“存储库永久移动”错误),我可以正常浏览存储库。

我的配置看起来像:

<VirtualHost *:443>
    ServerName domain.com
    ServerAlias www.domain.com svn.domain.com
    DocumentRoot /path/to/website/dir
    ...
    #stuff for SSL cert etc.
</VirtualHost>

<VirtualHost *:80>
    ServerName domain.com
    ServerAlias www.domain.com
    DocumentRoot /path/to/website/dir
    ...
</VirtualHost>

<Location /repo>
    DAV svn
    SVNPath /path/to/repos
    ... #auth details
</Location>

这基本上可以正常工作,但浏览到svn.domain.com会显示我的网站,浏览到会domain.com/repo显示存储库(svn.domain.com/repo工作正常,domain.com也工作正常),可能我可能想domain.com/repo显示一组关于我的项目、文档等的网页,svn.domain.com理想情况下,要么指向任何内容,要么指向可用存储库的列表或单独的页面等。我以为我已经掌握了 apache 配置文件,但这个却难倒了我!

答案1

您应该<VirtualHost>为您的svn.domain.comdomain.com / www.domain.com域设置单独的指令。看起来您正试图将两者都挤进第一个<VirtualHost>。将它们分开后,将 SVN 指令放入主机内svn.domain.com

相关内容