为什么需要submin管理SVN?

原来在Ubuntu下,都是直接通过命令行创建SVN仓库并分配权限,但是这有一些问题:

  • 每创建一个SVN仓库,都需要修改httpd.conf
  • 每创建一个帐户,都需要手动输入htpasswd并指定文件
  • 每修改权限,都要求登陆到服务器编辑authz
  • 授权管理员权限困难,且必须提供登陆Linux的帐号;

    这些不便在创建submin后都可以解决。

submin的安装与配置

1.下载submin源码包,我使用的是submin-2.1.2-0.tar.gz

2.解压,进入源码根目录,执行以下命令将submin安装到系统:

$sudo python setup.py install

3.创建submin的环境,执行以下命令

$sudo submin2-admin /var/lib/submin initenv yourname@email.address

4.执行以下命令

$sudo ln -s /var/lib/submin/conf/apache-webui-cgi.conf /etc/apache2/conf.d/
$sudo ln -s /var/lib/submin/conf/apache-svn.conf /etc/apache2/conf.d/
$sudo apache restart

5.在浏览器中输入http://localhost/submin/

提示以下界面,表示安装成功,用户名为admin,密码会发送到前面配置环境时设置的邮箱。

登陆成功后,应该出现如下界面,菜单栏USERS下面应有admin用户 :

如果没有正常显示,说明submin可能哪里还没配置成功。运行

$sudo submin2-admin /var/lib/submin diagnostics

检查下,最后会输出一段总结,确认下Subversion是ok的。

(...省略部分输出)
Summary: * Email settings: fail
* Git: ok
* Subversion: ok #这边一定要为ok
* Trac: disabled

如果不为ok,请根据具体的出错现象排查,下面一节是我在配置过程中遇到的问题。

配置中遇到的问题

没有启用CGI的错误

如果出现以下错误,说明没有启用CGI:

配置方法:

修改httpd.conf(基于Apache 2.4),确保以下CGI和rewrite,alias模块有打开:

LoadModule cgid_module modules/mod_cgid.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule alias_module modules/mod_alias.so

找到以下标签,确保有ScriptAlias指令,没有则添加:

<IfModule alias_module>
ScriptAlias /cgi-bin/ "/usr/cgi-bin/"
</IfModule>

找到以下标签,按以下配置修改

<Directory "/usr/cgi-bin">
AllowOverride None
Options +ExecCGI
</Directory>
AddHandler cgi-script .cgi .pl

然后重启下apache,自己编写下测试程序test.sh

#!/bin/bash
echo '<h1>hello</h1>'

修改权限为755,然后放到/usr/cgi-bin/。

在浏览器中输入http://localhost/cgi-bin/test.sh, 测试下如果能正常输出,说明CGI配置OK了。

不能正常发送邮箱的处理方法

先确保本地mail命令能正常使用,然后删除/var/lib/submin,重新配置submin,邮箱地址配置成当前用户。比如当前登陆的用户名为root,则为

$sudo submin2-admin /var/lib/submin initenv root@localhost

权限问题

apache是以www-data用户运行的,可能对/opt/svn没有写入权限,因此将/opt/svn的所有者改为www-data。

chown www-data:www-data /opt/svn

参考

Invalid command 'Rewrite Engine'解决方法

apache运行CGI程序的配置

SVN的WEB管理接口 Submin安装搭建

ubuntu 14.04安装submin

Ubuntu下Apache+SVN+submin实现WEB管理SVN的更多相关文章

  1. centos7搭建SVN+Apache+IF.svnadmin实现web管理SVN

    阅读目录 1. 介绍 2. 软件准备 3. 建立SVN Server仓库 4. 配置安装PHP&IF.SVNadmin 5. 启动服务 1.介绍 公司最近想把Windows server平台的 ...

  2. Ubuntu下的RabbitMQ安装与web管理配置

    首先在Ubutnu的/etc/apt/sources.list文件中加入一行 deb http://cz.archive.ubuntu.com/ubuntu trusty main 然后执行 sudo ...

  3. [转]:Ubuntu 下Apache安装和配置

    [转]:Ubuntu 下Apache安装和配置_服务器应用_Linux公社-Linux系统门户网站  https://www.linuxidc.com/Linux/2013-06/85827.htm ...

  4. 分享:linux下apache服务器的配置和管理

    linux下apache服务器的配置和管理. 一.两个重要目录: Apache有两个重要的目录:1.配置目录/etc/httpd/conf:2.文档目录/var/www: 二.两种配置模式: Apac ...

  5. Ubuntu下安装软件提示无法锁定管理目录(/var/lib/dpkg/)的解决办法

    Ubuntu下安装软件提示无法锁定管理目录(/var/lib/dpkg/)的解决办法   在安装软件的时候,有时候提示,无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它? 这是 ...

  6. ubuntu下apache服务器操作方法小结,具有参考借鉴价值

    这篇文章主要介绍了ubuntu下apache服务器操作方法小结,非常不错,具有参考借鉴价值,需要的朋友可以参考下(http://www.0831jl.com)Linux系统为Ubuntu 一.Star ...

  7. centos7搭建SVN+Apache+IF.svnadmin支持https实现web管理SVN

    阅读目录 1. 介绍 2. 软件准备 3. 建立SVN Server仓库 4. 配置安装PHP&IF.SVNadmin 5. 启动服务 1.介绍 公司最近想把Windows server平台的 ...

  8. Centos7 基于SVN+Apache+IF.svnadmin实现web管理

    1.简单介绍: iF.SVNAdmin应用程序是您的Subversion授权文件的基于Web的GUI.它基于PHP 5.3,需要安装一个Web服务器(Apache).该应用程序不需要数据库后端或任何类 ...

  9. Ubuntu下Apache+php+mysql网站架设详解

    目录 1 基础 2 安装 2.1 安装LAMP 2.2 图形化管理软件(可选) 2.2.1 安装webmin 2.2.2 安装phpmyadmin 3 配置文件路径 3.1 常用命令 3.2 配置ap ...

随机推荐

  1. springMVC学习笔记(二)-----注解和非注解入门小程序

    最近一直在做一个电商的项目,周末加班,忙的都没有时间更新博客了.终于在上周五上线了,可以轻松几天了.闲话不扯淡了,继续谈谈springMvc的学习. 现在,用到SpringMvc的大部分使用全注解配置 ...

  2. C# 利用socekt做到http监听,怎么样才能做到高性能

    c#原始提供了http的监听的类HttpListener,实现了简单的http.文章地址<C# 控制台或者winform程序开启http的监听状态> 但是经过我测试,这个HttpListe ...

  3. 在Mac上开发使用yeoman构建Asp.net core项目并且实现分层引用

    1.Yeoman? yeoman是一个自动化脚手架工具.它提供很多generator,generator相当于VisualStudio的模板,用来初始化项目.更多的就不多说了,写一遍都写不完,自己看吧 ...

  4. C#中 @ 的3种用途

    1.忽略转义字符例如string fileName = "D:\\文本文件\\text.txt";使用@后string fileName = @"D:\文本文件\text ...

  5. Redis两种持久化方式(RDB&AOF)

    爬虫和转载请注明原文地址;博客园蜗牛:http://www.cnblogs.com/tdws/p/5754706.html Redis所需内存 超过可用内存怎么办 Redis修改数据多线程并发—Red ...

  6. 纪念品分组 2007年NOIP全国联赛普及组

    题目描述 元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作.为使得参加晚会的同学所获得的纪念品价值相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品,并且每组纪念品的价格 ...

  7. 2、Python运算符与表达式

    1.运算符 >>>3+5 8 >>>3-5 2 >>>2*3 6 >>>2**3 8 #幂 >>>4/2 2. ...

  8. BaseAdapter的抽取

    为了更方便高效的使用BaseAdapter,特意抽取了一下,下面是简单的结构图: 需要4个类: [MyBaseAdapter3]: public abstract class MyBaseAdapte ...

  9. 从零开始学 Java - CentOS 安装 JDK

    我来总结一下吧 昨天我写了一篇从零开始学 Java - 我放弃了 .NET ?,在园子里突然引起了强烈的讨论,有期待我能持续更新的.有鼓励支持的.有相同经历的.也有同一个学校的师兄弟(我们相认了).当 ...

  10. FactoryMethodPattern(工厂方法)

    /** * 工厂方法模式 * 分为四部分 * 1.产品接口 * 2.产品实例 * 3.工厂接口 * 4.工厂实例 * 工厂类最好用单例模式,但在这里主要是说明工厂方法,就不用单例了 * @author ...