在之前的文章中,在Windows使用apache搭建Mercurial版本控制服务,并没有说到如何验证用户,而是允许所有人都提交。当时还不会怎么配置。
以下就是配置方法:
1,用htpasswd.exe建立用户密码文件htpasswd.exe在apache的bin目录可以找到,使用方法主要有
htpasswd -c 文件名 用户名 //参数-c创建密码文件,输入后会提示你输入密码
htpasswd 文件名 用户名 //如果用户名一样会更新密码
举个例子,我现在要建两个用户
这时会得到一个hguser的文件,把它拷贝到conf目录下
2,修改httpd.conf配置在httpd.conf配置最末尾加入,注意路径改为你的
AuthType Basic
AuthName "Mercurial repositories"
AuthUserFile "D:/Program Files/Apache2.2/conf/hguser"
>
>
这样就可以了,重启apache服务以后,试试从浏览器访问hg的网页?会提示你输入用户名和密码。
3,针对某些项目的权限设置在服务器存放项目的文件中,在.hg目录新建一个hgrc文件,里面可以配置为
这里是配置单个项目的,如果需要对所有项目配置,可以修改hgweb.config文件
allowpull = false
//不允许所有人下载该项目
allow_read = "John Doe, PhD", fatkun
//允许哪些人可以下载,如果有空格或特殊字符用引号""括起来
//还有deny_read,allow_push 等等
更多的配置可以查看这里http://www.selenic.com/mercurial/hgrc.5.html
本文转载自 http://fatkun.com/2010/08/mercurial-server-with-apache.html