Apache+SVN认证部署实战

Apache:我这里用的是yum安装,如:yum -y install httpd*

1.安装apache+svn结合的模块
yum install mod_dav_svn -y

2.设置web页面访问svn的账户和密码,apache不提供明文账户和密码访问,只提供密文访问,我用htpasswd生产密文的账户和密码,如下:
htpasswd -c /application/svndata/MySQL_DB/htpasswd.conf    jack      #-c是指定密文的配置文件,装过Nagios的朋友都熟悉吧。
New password:                    #输入密码
Re-type new password:            #再确认一次密码

3.再Apache服务器配置SVN访问的目录。
vim /etc/httpd/conf/httpd.conf      #shift+g到最后一行添加,如下:
<Location /MySQL_DB>                #是在url或者svn客户端上指定的访问路径 
DAV svn                              #声明svn
SVNPath /application/svndata/MySQL_DB/ #用来表示共同的父目录,所有不同的版本库都是存放在此目录下
AuthType Basic                        #使用基本的密码认证
AuthName "svn for MySQL_DB"          #网站说明文字
AuthUserFile /application/svndata/MySQL_DB/htpasswd.conf      #认证密码的存放位置
AuthzSVNAccessFile /application/svndata/MySQL_DB/conf/authz    #认证组,库的的存放位置
Satisfy all
Require valid-user                                            #允许合法用户登录
</Location>

4.启动apache服务器:
/etc/init.d/httpd restart

5.给jack用户授权访问MySQL_DB库,如下:
vim /application/svnpasswd/authz
sa = jc,test,jack
[MySQL_DB:/]
@sa = rw
test = r


vim /application/svndata/MySQL_DB/conf/authz        #必须添加上以下参数,否则没有权限访问web SVN服务器。
sa = jc,test,jack
[MySQL_DB:/]
@sa = rw
test = r

#杀死进程Pid,重启SVN服务器:
kill -USR1 `cat /application/svndata/svn.pid`
svnserve -d  -r /application/svndata/ --pid-file=/application/svndata/svn.pid

5.测试访问:

输入账户:jack
密码:123456

相关阅读:

Nginx+Apache实现网页动静分离

Linux下导入SSL证书(配置用于Apache)

Ubuntu 下 Apache虚拟主机的配置

基于Apache服务的SVN服务器之构建

CentOS 6.3下Apache2.4.4的安装

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/9b9a23443a1d4d5c5bd3736018ec7dc4.html