红联Linux门户
Linux帮助

CentOS下搭建SVN+Apache服务器

发布时间:2015-07-29 10:16:05来源:linux网站作者:linux人

1.安装软件包

# 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


5. 通过浏览器测试

在浏览器中输入http://ip或网站/repos/repo1

此时会弹出输入密码框,输入创建的用户名和密码就可以登录了。


CentOS 6.5部署Apache+SVN:http://www.linuxdiyf.com/linux/11462.html

CentOS 6.5环境下安装SVN整合Apache+SSL:http://www.linuxdiyf.com/linux/10253.html

CentOS下Apache+SVN+LDAP的安装与配置:http://www.linuxdiyf.com/linux/10128.html