为了让svn能够利用apache2模块启动,所以需要在apache中加入
mod_dav
另外,为了实现数据库认证,还需要增加两个模块给apache2:
LoadModule authn_dbd_module libexec/apache22/mod_authn_dbd.so
LoadModule dbd_module libexec/apache22/mod_dbd.so
OK
搞定了apache之后,开始编译svn的port。只需要mod_dav和apache_apr两个模块就行了。
之后的在 ..../etc/apache22/Include目录下添加svn.conf
# mod_dbd configuration DBDriver mysql DBDParams "host=localhost user=xxx pass=xxx dbname=xxx" DBDMin 4 DBDKeep 8 DBDMax 20 DBDExptime 300 <Location /internal> DAV svn SVNPath /var/svn/internal AuthType Basic AuthName "Internal SVN" AuthBasicProvider dbd # core authorization configuration Require valid-user AuthDBDUserPWQuery \ "SELECT password FROM user WHERE email = %s" # AuthUserFile /var/svn/etc/svn-auth-file AuthzSVNAccessFile /var/svn/etc/internal-access-file Require valid-user </Location>
接下来,就是数据库了,无论你怎么搞数据库关键在于那句select,没错,apache需要自己独特的password加密方案,这就是php语句的:
'{SHA}' . base64_encode(sha1($password, TRUE))
等你搞定了数据库之后,一切都可以工作了。
没有评论:
发表评论