您的位置:首页 > 运维架构 > Apache

centos下搭建svn+apache服务器

2017-02-28 15:53 591 查看
https://my.oschina.net/u/206356/blog/287635

安装软件包

# yum install httpd

# yum install mod_dav_svn

# yum install subversion

2. 验证安装
# httpd -version

结果显示:



前往 /etc/httpd/modules/ 下,检查是否包含mod_dav_svn.so和mod_authz_svn.so,如果有,mod_dav_svn安装成功。

# svnserve --version

结果显示:



安装svn 成功。

3. 创建仓库
# mkdir /var/www/svn # cd /var/www/svn # svnadmin create repo1

4. 配置

/var/www/svn 目录下会有一个repo1的文件夹

修改所有者:
# chown -R apache:apache repo1

copy /var/www/svn/repo1/conf 下的 authz到 /var/www/svn下,并创建passwd文件
# cp /var/www/svn/repo1/conf/authz /var/www/svn/authz # cd /var/www/svn # vi passwd :wq保存退出

生成账号:
# htpasswd /var/www/svn/passwd user1

输入密码,生成user1账号

权限管理设置:
# vi /var/www/svn/authz

在[groups]下添加组,
[/] 相当于/var/www/svn这个目录,赋予权限给用户组
[repo1:/] 是指repo1库
[repo1:/desgin]是repo1下的desgin目录

[groups]
admin=user1
proj1_developer=user2,user3
proj2_develoer=user2,user4

proj1_desgin=user5,user6

[/]@admin=rw

[repo1:/]@proj1_developer=rw

[repo1:/desgin]@proj1_desgin=rw

[repo2:/]@proj2_developer=rw

将svn关联到apache上:
# vi /etc/httpd/conf.d/subversion.conf

在底部加上:
<Location /repos>
DAV svn
SVNParentPath /var/www/svn#   # Limit write permission to list of valid users.#   <LimitExcept GET PROPFIND OPTIONS REPORT>#      # Require SSL connection for password protection.#      # SSLRequireSSL#      AuthType Basic
AuthName "Authorization SVN"      AuthzSVNAccessFile /var/www/svn/authz
AuthUserFile /var/www/svn/passwd
Require valid-user#   </LimitExcept></Location>

重启httpd
# service httpd restart
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息