今天搭了一个svn,遇到了这个问题,这个问题在 subversion 的 FAQ 里面就有。不过看了半天没弄明白怎么回事,呵呵。后来糊里糊涂弄好了,也没明白。刚才突然明白了。。。
比如你的 documentroot 指向了 /www 下面, 而你的 svn 的 path 设置到了 /www/svn 下面,就会出这个问题。因为,用户如果访问的是 /www/svn/proj1 的时候,那应该是按照一个正常的目录处理呢,还是按照 svn 的一个项目处理呢?这可是不同的,因为如果是一个 svn 项目,那就交给 dav-svn 处理的,按照其它svn 项目一样,会显示这个项目的 reversion 什么的。但是如果是按照目录处理,那就交给了 apache 处理,他会在这里面找 directory index 等一些操作。这就会让 apache 很困惑。
解决的办法也比较简单,就是在 /www 下面不要出现你的 svn 的名字,也就是说,把你的 /www/svn 弄到 /www 之外去。这就没问题了。当然,如果哪天某个哥们无心的在 /www 下面建了一个 svn 文件夹,那这个又会出现,呵呵。