我已经mod_dav_svn
在 FreeBSD 上配置了 1.8.9 以及 WebSVN 2.3.3,方法如下:
<Location /repos/svn>
DAV svn
SVNParentPath /usr/local/svn/repos
SVNListParentPath On
SVNPathAuthz Off
</Location>
Alias /repos/websvn "/usr/local/www/websvn"
<Directory "/usr/local/www/websvn">
Order Allow,Deny
Allow from all
Options FollowSymLinks MultiViews
DirectoryIndex wsvn.php
</Directory>
虽然这很有效,但我不明白 的全部含义MultiViews
。据我理解,存储库和 WebSVN 浏览器都应该可以通过一个 URL 访问,不是吗?
如果没有,WebSVN 将为我生成以下 URL:http://www.example.com/repos/websvn/wsvn/<repo>
我该如何摆脱那个wsvn
子路径?这config.php
没有多大帮助。
答案1
该指令可能是多余的,因为 websvn 有自己的文件来放置东西。在我的机器(Ubuntu 12.04)上,它是这个文件
/etc/websvn/apache.conf
内容可能需要一些编辑。它看起来像这样:
# Configuration for websvn using php4.
Alias /websvn /usr/share/websvn
<Directory /usr/share/websvn>
## No MultiViews
#DirectoryIndex index.php
#Options FollowSymLinks
## MultiViews
DirectoryIndex wsvn.php
Options FollowSymLinks MultiViews
## End MultiViews
Order allow,deny
Allow from all
<IfModule mod_php4.c>
php_flag magic_quotes_gpc Off
php_flag track_vars On
</IfModule>
</Directory>
默认情况下禁用 MultiViews,因此我取消注释了 MultiViews 的行并更改了别名和目录目标。问题已解决。