手动阀

Good Luck To You!

Linux下SVN服务器同时支持Apache的http和svnserve独立服务器两种

在Linux下配置SVN服务器以同时支持Apache的HTTP和svnserve独立服务器两种协议,可以按照以下步骤进行,本文假设你使用的是Subversion 1.8或更高版本。

Linux下SVN服务器同时支持Apache的http和svnserve独立服务器两种

安装必要的软件

确保你已经安装了subversionapache2及其相关模块,以及svnserve,你可以使用包管理器(如aptyum)来安装这些软件。

对于Debian/Ubuntu系统:

sudo apt-get update
sudo apt-get install subversion apache2 libapache2-mod-svn

对于CentOS/RHEL系统:

sudo yum install subversion httpd mod_dav_svn

配置Apache HTTP访问

编辑Apache配置文件(通常是/etc/apache2/sites-available/default/etc/httpd/conf/httpd.conf),添加如下内容:

启用DAV模块
LoadModule dav_module /usr/lib/apache2/modules/mod_dav.so
LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so
设置SVN父目录
<Location /svn> >
    DAV svn
    SVNParentPath /path/to/your/repos
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile /etc/apache2/dav_svn.passwd
    Require valid-user
</Location>

请将/path/to/your/repos替换为你的实际仓库路径,并将/etc/apache2/dav_svn.passwd替换为你的认证文件路径。

创建认证文件并设置权限:

sudo htpasswd -cm /etc/apache2/dav_svn.passwd yourusername

然后重启Apache服务:

Linux下SVN服务器同时支持Apache的http和svnserve独立服务器两种

sudo systemctl restart apache2   # For Debian/Ubuntu
sudo systemctl restart httpd     # For CentOS/RHEL

配置svnserve独立服务器

创建一个svnserve.conf文件,通常位于/etc/subversion目录下:

[general]
anon-access = none
auth-access = write
password-db = /etc/subversion/svnserve.passwd
realm = MyRepoRealm

创建认证文件并设置权限:

sudo htpasswd -cm /etc/subversion/svnserve.passwd yourusername

启动svnserve服务:

svnserve -d -r /path/to/your/repos

防火墙配置

确保你的防火墙允许HTTP和自定义端口(例如3690,用于svnserve)的流量,你可以使用ufwfirewalld来管理防火墙规则。

对于ufw

sudo ufw allow 'Apache Full'
sudo ufw allow 3690/tcp

对于firewalld

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-port=3690/tcp
sudo firewall-cmd --reload

测试配置

现在你可以通过两种方式访问你的SVN仓库:

Linux下SVN服务器同时支持Apache的http和svnserve独立服务器两种

HTTP:http://yourserverip/svn

svnserve:svn://yourserverip/yourreponame

使用相应的客户端工具进行测试,以确保两种协议都能正常工作。

通过以上步骤,你可以在Linux下配置一个同时支持Apache HTTP和svnserve独立服务器的SVN服务器,根据需求,你可以选择不同的协议来进行操作。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

Copyright Your WebSite.Some Rights Reserved.