AuthUserFile %SVN_REPO_PARENT%/passwd
#输出时调用Apache的Deflate模块,必须有启用此模块才能这样配,否则删除此行
SetOutputFilter DEFLATE
</Location>
这里涉及到两个文件: “%SVN_REPO_PARENT%/AccessFile” 及 “%SVN_REPO_PARENT%/passwd”.
并不一定非要放到”%SVN_REPO_PARENT%”目录下,我图方便而已。觉得不安全可以移到另外地方。
这两个文件里面具体内容的设置请参考第16和17步。
15.保存”httpd.conf”并退出,这里Apache2的配置告一段落。
16.”%SVN_REPO_PARENT%/AccessFile”文件的内容
[/]
* = r
user1 = rw
user2 = r
admin = rw
[%PROJECT_NAME%:/src/test]
user2 = rw
其中:
[/] 指代所有数据仓库的根目录,匿名用户默认的权限为只读。
对于”user1″和”admin”,他们对所有数据仓库都有读写权限。
对于”user2″,它对所有数据仓库仅有只读权限。但是下方又额外指定了他对”%PROJECT_NAME%:/src/test”目录具有读写权限。
综上,他对’test’目录及其子目录(自动继承,除非特别指定) 具有读写权限,其他则均为只读权限。
你可以根据需要来设定不同的权限,更详细的说明还需要参考SVN文档中的权限设置章节。
17.”%SVN_REPO_PARENT%/passwd”文件的内容
这个文件是通过”%APACHE_HOME%\bin\htpasswd.exe”自动生成的:
cmd
cd /D %APACHE_HOME%\bin
# 参数c仅在第一次运行时使用,用来创建一个新文件
htpasswd –cm %SVN_REPO_PARENT%\passwd user1
# 以后添加用户可用此命令,参数m表明需要加密
htpasswd –m %SVN_REPO_PARENT%\passwd user2
此时用文本编辑器打开”%SVN_REPO_PARENT%/passwd”,可以看到里面内容是类似这样的:
admin:$apr1$HLWV7/..$upZwVGvge0sc28fEp7mGM0
user1:$apr1$8sbRo...$hNMdkTvO4t8POVmOkV3Vg.
user2:$apr1$ZXzcE/..$5Ir0V8VQQtNYTNnnOp.EU1
