我一直在試圖設置Apache訪問Subversion版本庫這樣的:可能合併`SVNListParentPath`和`SVNMasterURI`?
- 利用存放收藏的,即
SVNParentPath
指向包含存儲庫的文件夾。 - 使用
SVNMasterURI
透明地代理提交給主服務器。
我最初的嘗試是這樣的:
<Location "/collection">
DAV svn
SVNParentPath /path/to/collection
SVNMasterURI http://master/collection
SVNListParentPath on
AuthzForceUsernameCase Lower
AuthzSVNAccessFile /path/to/access-file
</Location>
利用這種結構,透明代理提交工作按預期。但是,當我試圖瀏覽到http://svn-server/collection/
我得到403 Forbidden
和錯誤日誌包含The URI does not contain the name of a repository.
。
Trailing slashes似乎這裏有很大的重要性,所以嘗試在Location
,SVNParentPath
和SVNMasterURI
斜線的所有組合後,我發現:
- 爲
SVNListParentPath
工作,Location
必須有結尾的斜線。 - 要使
SVNMasterURI
正常工作,Location
必須而不是有斜線。
所有這些都在Ubuntu 12.04,Apache 2.2.22,mod_dav_svn 1.6.17dfsg-3ubuntu3上。
我的問題是:
是否有使用SVNListParentPath
和SVNMasterURI
在同一時間的方法嗎?
你有沒有這個運氣?我有相同的用例,對解決方案/解決方法非常感興趣。 – spikeheap 2013-07-29 14:42:32
恐怕不是,我的解決方法是添加一個簡單的腳本,在瀏覽到「http:// svn-server/collection /」時執行存儲庫列表呈現。 – 2013-07-30 05:23:05