Centos 下搭建SVN + Apache 服务器

黎东
L、先森
2018-01-19 0 1344


yum install httpd

yum install mod_dav_svn

yum install subversion

 


2.  验证安装

httpd -version

svnserve --version

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

  

安装svn 成功。

3. 创建仓库

mkdir /alidata/svn
cd /alidata/svn
svnadmin create www


4. 配置

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

  修改所有者:

chown -R apache:apache www


  copy  /alidata/svn/www/conf 下的 authz到 /alidata/svn下,并创建passwd文件

cp /alidata/svn/www/conf/authz /alidata/svn/authz 
cd /var/www/svn
vi passwd 
:wq保存退出


  生成账号:

htpasswd /alidata/svn/passwd lidong


    输入密码,生成user1账号

 权限管理设置:

vi /alidata/svn/authz


    在[groups]下添加组,

     [/] 相当于/alidata/svn这个目录,赋予权限给用户组

     [www:/] 是指www库

     [www:/blog]是www下的blog目录

[groups]
admin=lidong
developer=test


[/]
@admin=rw
* =

[www:/]
@developer=rw

[www:/blog]
@developer=rw


 将svn关联到apache上:

vi /etc/httpd/conf.d/subversion.conf


  在底部加上:

<Location /svn>
   DAV svn
   SVNParentPath /alidata/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 /alidata/svn/authz
      AuthUserFile /alidata/svn/passwd
      Require valid-user
#   </LimitExcept>
</Location>


开启svn服务

svnserve -d -r /alidata/svn/www

关闭svn服务

ps aux|grep svn

root     19951  0.0  0.0 156996   760 ?        Ss   16:50   0:00 svnserve -d -r /alidata/svn/www
root     20083  0.0  0.0 103192   852 pts/0    S+   17:29   0:00 grep svn

kill -9 19951

入版本库

.需要知道这样不会在版本库创建目录blog,如果你希望这样,请在URL后添加blog:

svn import -m “入库” /alidata/blog http://ip地址/svn/www/blog


重启httpd

service httpd restart



5. 通过浏览器测试

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

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


linux