博客
关于我
[Linux] PHP程序员玩转Linux系列-Ubuntu配置SVN服务器并搭配域名
阅读量:656 次
发布时间:2019-03-15

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

在Ubuntu 上部署SVN 服务器

在部署网站时,传统的使用 FTP 方式虽然常见,但确实不够高效。现在我将介绍如何在 Ubuntu 上安装并配置 Subversion(SVN)服务器,通过 SVN 直接部署网站。

安装 Subversion

首先,安装 SVN 服务器:

sudo apt-get install subversion

创建仓库目录

接下来,创建 SVN 仓库目录并初始化:

svnadmin create /home/ubuntu/svnrepos

配置 svnserve.conf

编辑 SVN仓库配置文件 svnserve.conf

sudo nano /home/ubuntu/svnrepos/conf/svnserve.conf

去除前缀,使配置如下(注:示例中 # 号前的内容已被注释,只保留配置内容):

anon-access = noneauth-access = writepassword-db = passwdauthz-db = authz

配置用户权限

编辑权限文件 authz

sudo nano /home/ubuntu/svnrepos/conf/authz

添加以下内容:

[groups]svn_users = sopans, sopans2[@svn_users]rw

这表示用户组 svn_users具备读写权限。

配置密码

编辑用户密码文件 passwd

sudo nano /home/ubuntu/svnrepos/conf/passwd

添加以下内容:

[users]sopans = www.sopans.com

配置 Apache 模块

为了通过 Apache 服务器访问 SVN仓库目录,需要安装 Apache SVN 模块:

sudo apt-get install libapache2-svn

配置虚拟主机

在 Apache 配置文件中,为域名(my.sopans.com) 配置虚拟主机:

sudo nano /etc/apache2/sites-available/yoursite.conf

添加以下内容:

ServerName my.sopans.com
DAV svn SVNPath /home/ubuntu/svnrepos/ AuthType basic AuthName "svn" AuthUserFile /home/ubuntu/svnrepos/conf/passwd # AuthzSVNAccessFile /home/ubuntu/svnrepos/conf/authz require valid-user ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined

启用服务

最后,启动并确认 SVN 服务已运行:

sudo svnserve -d -r /home/ubuntu/svnrepos/

检查进程是否运行:

ps aux | grep svnserve

测试 SVN 访问

通过浏览器打开 SVN 地址:http://my.sopans.com/svn/,使用配置好的用户名和密码进行验证。

常见问题解决

  • 密码错误提示:修改密码时,建议使用 htpasswd 工具进行加密。

  • 提交错误:确保仓库目录权限设为 777

  • chmod -R 777 /home/ubuntu/svnrepos/
    1. 域名解析问题:请确保域名已正确解析至服务器 IP 地址。
    2. 配置完成后,访问域名即可直接使用 SVN 存储库,无需后台服务运行。

    转载地址:http://ninmz.baihongyu.com/

    你可能感兴趣的文章
    PHP WebSehll 后门脚本与检测工具
    查看>>
    ReentrantLock源码解析
    查看>>
    PHP XSS攻击防范--如何过滤用户输入
    查看>>
    php zookeeper实现分布式锁
    查看>>
    PHP 中 this,self,parent 的区别、用法
    查看>>
    PHP 中如何高效地处理大规模数据的排序?
    查看>>
    PHP 之ftp客户端类封装实现
    查看>>
    php 代码改进
    查看>>
    php 代码混淆
    查看>>
    PHP 使用 $_SERVER['PHP_SELF'] 获取当前页面地址及其安全性问题
    查看>>
    Redis系列之如何避免缓存击穿
    查看>>
    php 内存分析
    查看>>
    PHP 函数名前面加&
    查看>>
    redis报错
    查看>>
    php 删除包含某一字符的数组元素
    查看>>
    Redis学习总结(19)——Redis 5种集群方式对比
    查看>>
    php 反射
    查看>>
    php 处理 大并发
    查看>>
    php 大文件上传
    查看>>
    php 子进程监听消息,swoole学习笔记之多线程端口监听问题记录 多进程epoll模式...
    查看>>