Linux+Apache+SVN搭建SVN服务器(CentOS)

来源:互联网 发布:机械零件加工报价软件 编辑:程序博客网 时间:2024/05/01 21:59

    1.安装软件包

    # yum install mod_dav_svn

    # yum install subversion

    2.找到http的配置文件,添加

    1. <Location /svn>----------->这个/svn很重要,名字随意  
    2. DAV svn  
    3. # SVNParentPath /data/svn --------->原来有这行,但是没有用  
    4. SVNPath /data/svn ------->这行原来没有,我自己加进去的,这个目录就是svn版本库目录  
    5. #  
    6. # # Limit write permission to list of valid users.  
    7. # <LimitExcept GET PROPFIND OPTIONS REPORT>  
    8. # # Require SSL connection for password protection.  
    9. # # SSLRequireSSL  
    10. #  
    11. AuthType Basic  
    12. AuthName "svn for matu" ----------->导出的时候在对话框里显示  
    13. AuthUserFile /data/passwd.conf ----------->密码文件的位置,文件名随意  
    14. AuthzSVNAccessFile /data/authz.conf ----------->权限文件,文件名随意  
    15. Require valid-user  
    16. # </LimitExcept>  
    17. </Location>  
    1. 3、建立版本库

      1. mkdir /data/svn -p  
      2. svnadmin create /data/svn  
      3. Chown apache:apache /data/svn -R  
      4. Chmod 777 /data/svn -R ---->权限问题还有待研究  
      5. ls /data/svn -l  
      6. 创建成功的话会有以下内容  
      7. drwxrwxrwx. 2 apache apache 4096 3月 13 17:26 conf  
      8. drwxr-xr-x 3 apache apache 4096 3月 14 10:12 dav  
      9. drwxrwsrwx. 6 apache apache 4096 3月 14 14:37 db  
      10. -rwxrwxrwx. 1 apache apache 2 3月 14 00:53 format  
      11. drwxrwxrwx. 2 apache apache 4096 3月 14 00:53 hooks  
      12. drwxrwxrwx. 2 apache apache 4096 3月 14 00:53 locks  
      13. -rwxrwxrwx. 1 apache apache 229 3月 14 00:53 README.txt  
      14.    

        4、添加用户,分配权限

      15. 给用户添加密码:  
      16. htpasswd -c /data/passwd.conf username ---->位置跟配置文件里的一样,别搞错,给第一个用户添加密码时要加c,意思是创建这个文件,以后就不用加了。  
      17. 打开权限文件:  
      18. vim /data/authz.conf ---->这个文件可以参考/data/svn/conf/authz文件写  
      19. 在下面添加组,名字随意  
      20.    
      21. [groups]  
      22. all = admin,zhangsan,lisi  
      23. design = zhangsan  
      24. admin = admin  
      25. phone = lisi  
      26.   
      27. 分配权限  
      28.   
      29. [/] ---->这个根目录是指/data/svn  
      30.     
      31. @all = r ----->组名前面加@  
      32. admin = rw ----->r读,w写  
      33. [svn:/design] ---->svn是指配置文件location标签里的svn,design是指版本库下面的一个文件夹,可以用管理员admin在客户端创建,同理其他文件夹也一样  
      34. @design = rw  
      35. lisi = r  
      5、找到Nginx的配置文件进行配置即可
      1. 配置站点:  
      2. server {   
      3.     listen 80;   
      4.     server_name test.cn;   
      5.     location ~ \.(ico|xsl|css)$ {   
      6.         root /data/webroot/svnhtml;   
      7.     }   
      8.     location /svn {   
      9.         proxy_set_header Host $host;   
      10.         proxy_set_header X-Real-IP $remote_addr;   
      11.         proxy_set_header X-Forwarded-Proto https;   
      12.         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;   
      13.         proxy_pass http://127.0.0.1:8080/svn/;   
      14.     }   
      15. }  
2 0
原创粉丝点击