CentOS搭建SVN服务器

0

安装软件

yum install httpd mod_dav_svn subversion

修改端口

修改/etc/httpd/conf/http.conf端口9090

创建SVN库

svnadmin create /home/svn

修改配置

修改/etc/httpd/conf.d/subversion.conf配置文件:

<Location />
	DAV svn
	SVNPath	/home/svn
	SVNListParentPath on
	Satisfy Any
	AuthType Basic
	AuthName "acgist.com svn server"
	AuthUserFile /home/svn/conf/passwd
	Require valid-user
	AuthzSVNAccessFile /home/svn/conf/authz
</Location>

一般.so库文件都已经正常的引用了。

注:如果同时要支持匿名用户访问,一定要加上Satisfy Any这行,否者匿名用户不能访问。

授权软件authzsvn配置一样,passwd文件需要使用命令htpasswd创建,如果没有文件需要加上参数-c

htpasswd -c passwd root

root是用户名,然后两次输入密码。

authz配置权限

[groups]
master = root

# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r

[/]
@master = rw
* = 

[/open]
@master = rw
* = r

启动服务

启动httpd就可以了,不用启动svnservice

service httpd start

配置Nginx代理

server {
	listen		80;
	server_name	svn.acgist.com;
	location / {
		proxy_set_header Host $host;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-Proto $scheme;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_pass http://localhost:9090;
	}
}

20220724批注
现在基本上都是使用Git了,SVN渐渐淘汰了。