linux环境下实现svn服务器支持http协议

 一 前提:

       现有的svn已经支持svn协议,并且版本库、账户和权限已设置好。这些步骤就不说了,详情请查看小编另一篇播客()效果如下图:

二 服务器环境:
       1 centOS 7

       2 可上网

三 操作步骤:

    1  安装Apache
         yum install httpd 
         设置开机启动
         chkcofing httpd on
         启动Apache
         service httpd start
         查看Apache版本

         httpd -version


    2 安装Apache支持服务

         yum install mod_dav_svn mod_auth_mysql

查看是否安装成功
cd /etc/httpd/modules/

如果有mod_dav_svn.so 和 mod_authz_svn.so模块,如果有,则说明mod_dav_svn安装成功


如果启动Apache提示错误:
httpd:httpd: Could not reliably determine the server's fully qualif domain name, using ::1 for ServerName
解决办法:
vi /etc/httpd/conf/httpd.conf #编辑
ServerName www.example.com:80 #去掉前面的注释
:wq! #保存退出
   3 配置http协议认证文件
htpasswd -c /var/svn/svntest/http_passwd   username
根据提示输入两次密码即可。

因为http协议和svn协议使用的认证文件编码格式不同,所以不能共用一套认证文件。

注意:/var/svn/svntest是我的数据仓库目录,http_passwd是我创建的认证文件名称。username是我创建的第一         个用户,因为是第一个用户,所以需要加-c,以后创建账户不需要加-c命令。

vi /etc/httpd/conf/httpd.conf #编辑
        ServerName www.example.com:80 #去掉前面的注释
        :wq! #保存退出
    4 设置Apache配置与文件
vi /etc/httpd/conf.d/subversion.conf

[plain]  view plain  copy
  1. <Location /svn>  
  2. DAV svn  
  3. #SVNPath /home/svn  
  4. SVNParentPath /var/svn  
  5. # # Limit write permission to list of valid users.  
  6. # <LimitExcept GET PROPFIND OPTIONS REPORT>  
  7. # # Require SSL connection for password protection.  
  8. # # SSLRequireSSL  
  9. #  
  10. AuthType Basic  
  11. AuthName "Authorization SVN"  
  12. AuthzSVNAccessFile /var/svn/svntest/conf/authz  
  13. AuthUserFile /var/svn/svntest/conf/svn_http_passwd  
  14. Require valid-user  
  15. # </LimitExcept>  
  16. </Location>  

说明:DAV为svn支持文件,svnpath为svn版本库目录,只有一个版本库时使用svnpath,如果有多个版本时使用                  svnparentpath和svnlistparentpath配合使用;AuthaSVNAccessFile为权限文件目录,跟svn协议共同使用一个          权限文件即可;AuthUserFile为用户认证文件,填入第3步配置的认证文件目录;Require为用户是否需要验证。
    5 为Apache设置目录权限
chown apache:apache /var/svn/svntest -R
为Apache设置数据仓库的所有者权限
重启Apache服务

service httpd restart


    6 测试

Windows下使用svn协议访问svn服务器


Windows下使用http协议在浏览器访问服务器

http://192.168.22.230:80\svn\svntest

地址拼接:http://+ip+端口号+Apache配置文件中Location节点名称+数据仓库


Windows下使用http协议在svn客户端访问服务器


四 总结

支持http协议以后,就可以在公网访问svn服务器,只要有网,我们就可以随时随地访问服务器,实现即时办公


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值