博客
关于我
[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/

    你可能感兴趣的文章
    pandas 滚动窗口 - datetime64[ns] 未实现
    查看>>
    pandas 版本兼容特定的蟒蛇和NumPy配置吗?
    查看>>
    pandas 生成excel多级表头
    查看>>
    Pandas 的 DataFrame 详解-ChatGPT4o作答
    查看>>
    pandas 读取excel数据,以字典形式输出
    查看>>
    Pandas 读取具有浮点值的 csv 文件会导致奇怪的舍入和小数位数
    查看>>
    pandas 适用,但仅适用于满足条件的行
    查看>>
    pandas 重新采样到每月的特定工作日
    查看>>
    pandas :如何删除以NaN为列名的多个列?
    查看>>
    pandas :我如何对堆叠的条形图进行分组?
    查看>>
    pandas :按移位分组和累加和(GroupBy Shift And Cumulative Sum)
    查看>>
    pandas :检测一个DF和另一个DF之间缺失的列
    查看>>
    Pandas-从具有嵌套列表列表的现有列创建动态列时出错
    查看>>
    Pandas-通过对列和索引的值求和来合并两个数据框
    查看>>
    pandas.columns、get_dummies等用法
    查看>>
    pandas.DataFrame.copy(deep=True) 实际上并不创建深拷贝
    查看>>
    pandas.read_csv()的详解-ChatGPT4o作答
    查看>>
    PANDAS.READ_EXCEL()输出‘;溢出错误:日期值超出范围‘;而不存在日期列
    查看>>
    pandas100个骚操作:再见 for 循环!速度提升315倍!
    查看>>
    Pandas:如何根据其他列值的条件对列进行求和?
    查看>>