此篇方法會導致部份 svn 指令失敗,需要修正!
*************
apache2中要使用svn功能
可以先參考 Gentoo的文件 http://gentoo-wiki.com/HOWTO_Apache2_with_subversion_SVN_and_DAV
我設定如下:
<Location>權限設定檔svnaccessfile:
DAV svn
#SVNPath /var/svn/repos
SVNParentPath /var/svn
SVNListParentPath on
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /var/svn/conf/svnusers
AuthzSVNAccessFile /var/svn/conf/svnaccessfile
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
[groups]
admin = ppc52776
ptms = simi
wrms = simi
[/]
* = r
@admin = rw
[osc:/]
ppc52776 = rw
[PTMS:/]
@ptms = rw
[WRMS:/]
@wrms = rw
安裝完以後,連結網址是: http://localhost/svn/xxxx
但是我希望可以是virtualhost的方式,例如 http://svn.ppcsite.info 就可以直接連接到 svn
目前想到的方法是用 apache2 的 mod_rewrite 去作修改
<VirtualHost *:80>ReWriteCond 是為了避免 http://svn.ppcsite.info/svn/osc 變成 http://svn.ppcsite.info/svn/svn/osc
ServerName svn.ppcsite.info
DocumentRoot /var/svn
ReWriteEngine on
ReWriteCond %{REQUEST_URI} !^/svn.*
RewriteRule /(.*) /svn/$1/ [PT]
</VirtualHost>
RewriteRule 後面的 [PT] 似乎就市直接把網址導過去,不加的話會變成 /svn/svn/svn/svn/...../svn/
沒有留言:
張貼留言