CentOs7.4 搭建 svn HTTP服务器
一、通过yum安装svn
yum -y install mod_dav_svn
yum -y install subversion
通过如下命令查看svn 的安装位置:
rpm -ql subversion
二、创建版本目录库(此仅为目录,为后面创建版本库提供存放位置)
在 /home/svn 目录下创建两个文件夹, 一个用于存放配置文件,一个用于svn 版本库存放.
进入svnrepo 目录下 ,创建一个document 文件夹,执行如下命令,创建一个版本库.
svnadmin create /home/svn/svnrepo/document
生成如下文件:
[root@localhost document]# ll
总用量 8
drwxr-xr-x. 2 root root 54 4月 2 14:59 conf
drwxr-sr-x. 6 root root 233 4月 2 14:59 db
-r--r--r--. 1 root root 2 4月 2 14:59 format
drwxr-xr-x. 2 root root 231 4月 2 14:59 hooks
drwxr-xr-x. 2 root root 41 4月 2 14:59 locks
-rw-r--r--. 1 root root 229 4月 2 14:59 README.txt
将上面conf 目录下的 authz 、passwd 两个文件移动到 /home/svn/conf 目录下.
修改/home/svn/svnrepo/document/conf/svnserve.conf 配置文件
anon-access = none
auth-access = write
authz-db = /home/svn/conf/authz
non-access = none:表示禁止匿名用户访问。
auth-access = write:表示授权用户拥有读写权限。
#password-db = passswd:指定用户名口令文件,即 passwd 文件。 因使用http模式,这个放弃配置.
authz-db = /home/svn/conf/authz
关闭SELINX
如果你开启了Selinux,要么关闭SELinux,要么添加如下SELinux规则:
chcon -R -t httpd_sys_content_t /home/svn/svnrepo/document
chcon -R -t httpd_sys_rw_content_t /home/svn/svnrepo/document
/sbin/restorecon -v /home/svn/conf/accesspwd
/sbin/restorecon -v /home/svn/conf/authz
三、创建svn 用户
[root@localhost home]# htpasswd -cm /home/svn/conf/accesspwd tom
-c 选项创建 一个accesspwd 文件, 创建第二个用户是, 取消-c 选项.
四、修改Apache httpd 配置
进入 /etc/httpd/conf.d/ 目录下 ,创建svn.conf 文件,并添加如下配置
<Location /svn>
DAV svn
SVNParentPath /home/svn/svnrepo/
# Limit write permission to list of valid users.
#<LimitExcept GET PROPFIND OPTIONS REPORT>
# Require SSL connection for password protection.
# SSLRequireSSL
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /home/svn/conf/accesspwd
AuthzSVNAccessFile /home/svn/conf/authz
Satisfy all
Require valid-user
#</LimitExcept>
</Location>
五、修改目录权限
[root@localhost ~]# chown -R apache:apache /home/svn
不修改的话,操作会报 could not begin a transaction 的一个错误.
六、启动服务
启动svn 服务,
svnserve -d -r /home/svn/svnrepo
确认服务是否启动
[root@localhost document]# netstat -anop | grep 3690
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 23374/svnserve off (0.00/0/0)
unix 3 [ ] STREAM CONNECTED 8963690 51859/gnome-shell
svn 启动默认端口是3690 ,说明启动成功.
启动Apache Httpd 服务
systemctl restart httpd.service
确认服务是否启动
[root@localhost document]# systemctl status httpd.service
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since 二 2019-04-02 15:35:39 CST; 2min 28s ago
Docs: man:httpd(8)
man:apachectl(8)
Process: 34303 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=0/SUCCESS)
Main PID: 34315 (httpd)
出现 绿色标准的runnning ,表示启动成功.
七、访问
还没有评论,来说两句吧...