博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Debian/Kali下Subversion的配置
阅读量:5928 次
发布时间:2019-06-19

本文共 2460 字,大约阅读时间需要 8 分钟。

20190624记录

本来想用Nginx直接搞subversion,然后发现nginx不支持,好像是缺少对dav什么的支持

于是用apache搞,然后再用nginx反向代理

安装不再记了,电脑自带nginx和apache,subversion用apt都能装

操作系统Kali2

一、配置Subversion

首先配置subversion,至少svn协议能跑起来再说下一步

我把库建在/srv/svn目录下

一个项目准备放在/srv/svn/demo1里面 建立目录不说了

建完之后 命令 svnadmin create /srv/svn/demo1

其他选项我用不到 用这个就够了

然后修改配置,添加用户,设置权限

1、vi /srv/svn/demo1/conf/svnserve.conf

anon-access = none 这个是设置匿名用户权限 默认是read 也就是只读 设置成none就是禁止访问

auth-access = write 这个是设置认证用户的权限 肯定要设置成write 就是可以写入

password-db = passwd 这个是设置认证方式 一般密码认证就够了 这个密码明文保存在文件里 也就是同目录下的passwd文件

authz-db = authz 这个是设置权限 跟上面一样

2、vi /srv/svn/demo1/conf/passwd

在[users]下面添加记录 一个用户一行 格式为 <用户名> = <密码>

3、vi /srv/svn/demo1/conf/authz

我承认我很懒 我在最下面添加的一个

[/]

admin = rw

* = r

意思就是根目录权限

admin用户 权限为读写

其他用户 权限为只读

这里的用户在passwd里面必须要有

 

配置完了之后 启动svnserve

命令 svnserve -d -r /srv/svn/demo1

-d 后台运行 -r 指定目录

如果有防火墙要开放3690端口

然后软件通过svn://<你的IP地址>/ 访问 不要用浏览器 浏览器不支持svn协议

输入用户名和密码 如果成功了 就可以做下一步了

二、配置Apache2

我的系统自带apache2,但是不自带svn支持,需要下载

apt install libapache2-mod-svn

装完之后在apache2的目录下 /etc/apache2 的mods-enabled里面 应该有几个文件

authz_svn.load

dav_svn.conf

dav_svn.load

如果没有的话去mods-available里面看看 如果有的话建立软链接过来

然后编辑dav_svn.conf

注意 这里我只列出了我修改的地方 即解除注释或者添加

<Location /svn>
  DAV svn
  SVNParentPath /srv/svn
  SVNListParentPath on 注意 这行是我添加的
  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/apache2/dav_svn.passwd 注意 这个文件需要自己创建
  AuthzSVNAccessFile /etc/apache2/dav_svn.authz 注意 这个文件需要自己创建
  Require valid-user
</Location>
以下也是我添加的
<Directory "/srv/svn">
  AllowOverride None
  Options None
  Order allow,deny
  Allow from all
  Satisfy all
</Directory>

改完之后保存

然后配置用户

htpasswd -c /etc/apache2/dav_svn.passwd <用户名>

然后会让你输入两次密码

如果再加用户就不用-c选项

htpasswd /etc/apache2/dav_svn.passwd <用户名>

这样就可以

配置权限

vi /etc/apache2/dav_svn.passwd

[demo1:/]

admin = rw
* = r

其实这里和subversion的权限一样

因为我在apache2里面配置的svn是根目录 不是那个demo1 所以没有直接写[/]

到这里apache2的配置也完成了

重启apache2服务

service apache2 restart

如果没报错 则配置正确

浏览器打开http://localhost:81/svn

认证之后应该会显示

Collection of Repositories

  • demo1/

Powered by  version 1.10.4 (r1850624).

到这里apache2的配置就完成了

 

三、配置Nginx转发Apache

因为我觉得还是nginx用的顺手 80也给nginx用的 于是就把apache的端口换成了81

apache端口在/etc/apache/ports.conf里面配置

修改 Listen 81

修改Nginx的配置文件

vi /etc/nginx/sites-enabled/default

在server段的里面添加

    location /svn {

        proxy_pass http://localhost:81;
    }

要注意 我的default文件是默认的 没有修改过

他的网站根目录在/var/www/html

他监听80端口

他的server_name是_ 对 就是个下划线

启动nginx服务

service nginx restart

然后再用浏览器访问http://localhost/svn

如果和刚才81端口访问的效果一样 那么配置完成

转载于:https://www.cnblogs.com/panther1942/p/11078506.html

你可能感兴趣的文章
测试人员必学的软件快速测试方法(二)
查看>>
程序员全国不同地区,微信(面试 招聘)群。
查看>>
【干货】界面控件DevExtreme视频教程大汇总!
查看>>
闭包 !if(){}.call()
查看>>
python MySQLdb安装和使用
查看>>
Java小细节
查看>>
poj - 1860 Currency Exchange
查看>>
chgrp命令
查看>>
Java集合框架GS Collections具体解释
查看>>
洛谷 P2486 BZOJ 2243 [SDOI2011]染色
查看>>
linux 笔记本的温度提示
查看>>
数值积分中的辛普森方法及其误差估计
查看>>
Web service (一) 原理和项目开发实战
查看>>
跑带宽度多少合适_跑步机选购跑带要多宽,你的身体早就告诉你了
查看>>
广平县北方计算机第一届PS设计大赛
查看>>
深入理解Java的接口和抽象类
查看>>
java与xml
查看>>
Javascript异步数据的同步处理方法
查看>>
快速排序——Java
查看>>
unity游戏与我
查看>>