我有一个专用服务器,运行Apache,有几个虚拟主机,每个主机都有自己的域。 Subversion设置为使用WebDAV,通过Apache和SSL证书。 SSL证书仅针对其中一个域进行设置。
我希望只能通过具有SSL证书的域访问svn repos。
我的问题是,我也可以通过其他域访问存储库,即使SVN身份验证无论如何都可以使用,我想限制为单个域。
我将如何配置此方案?
答案 0 :(得分:0)
如果您要在virtualhost(使用的基于名称的virtusl-hosts)中定义SVN-Location,您将在此主机中看到仅的存储库
脏(部分丑陋)样本
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName svn
<Location />
DAV svn
SVNParentPath /svn/repositories
SVNListParentPath on
AuthType Basic
AuthName "Subversion"
AuthUserFile svn-auth-file
Require valid-user
</Location>
</VirtualHost>
对于存储库REPO,只有http://svn/REPO
URL将显示存储库的conent,对于URL中的任何其他虚拟主机/REPO
,必须提供“找不到路径”(如果不存在真实目录REPO,但是 - 无论如何 - 这不是访问存储库)