linux下安装apache + subversion
环境是
操作系统:Red Hat Enterprise Linux Server release 5.3 (32位)
apache版本:httpd-2.2.14
subversion版本:subversion-1.6.6
需要的安装包:(目前是最新的)
subversion-1.6.6.tar.gz 地址:http://subversion.tigris.org/downloads/subversion-1.6.6.tar.gz
subversion-deps-1.6.6.tar.gz 地址:http://subversion.tigris.org/downloads/subversion-deps-1.6.6.tar.gz
httpd-2.2.14.tar.gz 地址:http://apache.etoak.com/httpd/httpd-2.2.14.tar.gz
一.安装apr跟apr-util(这两个包subversion已经带了)
1.解压subversion
tar zxvf subversion-1.6.6.tar.gz
tar zxvf subversion-deps-1.6.6.tar.gz (这个解压后会自动放到前面一个解压的目录里的)
2.安装
cd subversion-1.6.6/apr
./configure --prefix=/usr/local/apr
make && make install
cd subversion-1.6.6/apr-util
./configure --with-apr=/usr/local/apr
make && make install
二.安装apache
1.解压apache
tar zvxf httpd-2.2.14.tar.gz
2.安装
#./configure --prefix=/opt/Apache2 --enable-so --enable-dav --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
#make
#make install
注意:--prefix指定安装目录,注意一定要加--enable-so是核心能够装载DSO和--enable-dav是安装mod_dav_svn.so跟mod_authz_svn.so这两个模块
三. 安装subversion
#cd subversion-1.6.6
#./configure --prefix=/opt/subversion --with-apxs=/opt/Apache2/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-ssl --with-zlib=/usr/lib --enable-maintainer-mode
#make
#make install
四. 配置subversion
1.创建账号密码文件
#mkdir -p /home/svnroot
#chown -R svnroot:svn /home/svnroot
2.创建资料库
首先要创建一个资料库(我使用单资料库的方式),使用svnadmin增加资料库
#cd /usr/local/subversion/bin
#./svnadmin create /home/svnroot/repository/pro1
到svnroot下看是不是多了文件,多了就是说明创建成功
htpasswd –c /home/svnroot/repository/pro1/conf/passwd prouser1
输入密码,两次确认
注意:第一次设置用户密码要加入 –c 这个参数
五. 配置apache的httpd.conf
打开apache的conf/httpd.conf, 安装subversion后,apache的conf/httpd.conf文件会自动增加了模块配置
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
相应的so文件也自动copy到了apache/modules。这些工作就不用自己动手了。
需要自己动手修改apache下的httpd.conf最后增加以下内容
DAV svn
SVNPath /home/svnroot/repository/pro1 #版本库的目录
AuthType Basic
AuthName "Subversion repository" #欢迎语言
AuthUserFile /home/svnroot/pro1/conf/passwd #密码文件
Require valid-user
注意:
1. SVNPath一定要跟./svnadmin create /home/svnroot/repository/pro1的目录一样
2. 目录svnroot的权限设置成755
3. 因为要用HTTP服务器Apache,Apache安装后默认的属主和属组的配置为daemon和daemon,
所以其中属主和数组改为svnroot:svn,否则创建的仓库没有写的权限,当客户端上传文件会报类似的错误:
svn: Can't create directory '/subversion/main/db/transactions/0-1.txn': Permission denied
修改后的/opt/Apache2/conf/httpd.conf文件中的配置如下:
......
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
#User daemon
#Group daemon
User svnroot
Group svn
......
六.修改版本库配置文件
版本库1:
# vi /home/svnroot/repository/pro1/conf/svnserve.conf
内容修改为:
[general]
anon-access = none
auth-access = write
password-db = /home/svnroot/repository/pro1/conf/passwd
authz-db = /home/svnroot/repository/pro1/conf/authz
realm = pro1
七.启动Apache
# ./apachect1 start
【附】
vi /usr/local/apache/conf/httpd.conf
//在最下面添加,我在配置的时候,下面这两句话是自动加上的,可以不加
#LoadModule dav_svn_module modules/mod_dav_svn.so
#LoadModule authz_svn_module modules/mod_authz_svn.so
DAV svn
SVNParentPath /home/svnroot/repository/ //svn父目录
AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件
AuthType Basic //连接类型设置
AuthName "Subversion.zoneyump" //连接框提示
AuthUserFile /home/svnroot/repository/authfile //用户配置文件
Require valid-user //采用何种认证
//其中authfile是通过
htpasswd -b -c /home/svnroot/repository/authfile username password
//来创建的
//"Require valid-user"告诉apache在authfile中所有的用户都可以访问。
2)权限分配
配置用户访问权限,用于定义用户组和版本库目录权限
# vi /home/svnroot/repository/authz.conf
注意:
* 权限配置文件中出现的用户名必须已在用户配置文件中定义。也就是在前面用htpasswd添加的用户
* 对权限配置文件的修改立即生效,不必重启svn。
用户组格式:
[groups]
用户组名 = 用户1,用户2
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。
版本库目录格式:
[版本库:/项目目录]
@用户组名 = 权限
用户名 = 权限
其中,方框号内部分可以有多种写法:
/,表示根目录及以下。根目录是svnserve启动时指定的,我们指定为/home/svnroot/repository。这样,/就是表示对全部版本库设置权限。
test:/,表示对版本库test设置权限
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。
示例:
[groups]
admin = mangosoft
[/]
@admin = rw
[test:/]
@admin = rw
lsw = rw
jackey=rw
删除Subversion默认安装库文件权限文件authz,passwd
# rm /home/svnroot/repository/test/conf/authz
# rm /home/svnroot/repository/test/conf/passwd
测试
如果顺利的话,就可以通过http://localhost/svn/test访问了,GoodLuck!
1、相关软件下载:
访问http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=260&expandFolder=74
从下载列表下载最新版本:
subversion-1.6.9.tar.gz 和subversion-deps-1.6.9.tar (包括apr的一些库)
2、解压缩。
#gunzip subversion-1.6.9.tar.gz
#gunzip subversion-deps-1.6.9.tar
注意,subversion-deps-1.4.6.tar.gz 会解压到subversion-1.6.9目录下。
3、编译安装
#./configure --prefix=/opt/subversion
如果提示:
configure: error: We require OpenSSL; try --with-openssl
#./configure --prefix=/opt/subversion --with-openssl=/usr/bin
#make
#make install
6、创建项目目录 mkdir -R /fileServer/app/subversion/project
7、创建资料库
{subversion}/bin/svnadmin create /fileServer/app/subversion/project
8、修改配置
/path/to/repos/conf/passwd 增加用户和口令(明码)
/path/to/repos/conf/svnserve.conf配置如下
anon-access = none
password-db = passwd
9、验证安装 svnadmin --version
10、启动服务 svnserve --daemon --root /fileServer/app/subversion/project
11、验证服务 #lsof -i :3690
12、下载客户端 http://sourceforge.net/projects/tortoisesvn/
13、配置Eclipse使用Subversion
打开Eclipse的菜单Help > Software Updates > Find and Install ......URL:http://subclipse.tigris.org/update_1.0.x
窗口 > 显示视图 > 其他,选择SVN资源库,在视图中右键 新建>资源库位置,输入svn://168.168.1168.168,OK
eclipse插件下载
./configure --with-apxs=/opt/apache2/bin/apxs --with-apr=/opt/apache2 --with-apr-util=/opt/apache2 --prefix=/opt/subversion-1.6.9
./configure --prefix=/opt/Apache2 --enable-so --enable-dav --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
make
make install
./configure --prefix=/opt/subversion --with-apxs=/opt/Apache2/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-ssl --with-zlib=/usr/lib --enable-maintainer-mode
make
make install
mkdir -p /home/svnroot
----------------------------------
Apache2实现限制IP访问服务
用 deny 和 allow 来实现
例如:
Deny from all
allow from 162.105.166.111
http://ja00159.j01.netjsp.com/tec/index.jsp?xwz=0012
环境是
操作系统:Red Hat Enterprise Linux Server release 5.3 (32位)
apache版本:httpd-2.2.14
subversion版本:subversion-1.6.6
需要的安装包:(目前是最新的)
subversion-1.6.6.tar.gz 地址:http://subversion.tigris.org/downloads/subversion-1.6.6.tar.gz
subversion-deps-1.6.6.tar.gz 地址:http://subversion.tigris.org/downloads/subversion-deps-1.6.6.tar.gz
httpd-2.2.14.tar.gz 地址:http://apache.etoak.com/httpd/httpd-2.2.14.tar.gz
一.安装apr跟apr-util(这两个包subversion已经带了)
1.解压subversion
tar zxvf subversion-1.6.6.tar.gz
tar zxvf subversion-deps-1.6.6.tar.gz (这个解压后会自动放到前面一个解压的目录里的)
2.安装
cd subversion-1.6.6/apr
./configure --prefix=/usr/local/apr
make && make install
cd subversion-1.6.6/apr-util
./configure --with-apr=/usr/local/apr
make && make install
二.安装apache
1.解压apache
tar zvxf httpd-2.2.14.tar.gz
2.安装
#./configure --prefix=/opt/Apache2 --enable-so --enable-dav --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
#make
#make install
注意:--prefix指定安装目录,注意一定要加--enable-so是核心能够装载DSO和--enable-dav是安装mod_dav_svn.so跟mod_authz_svn.so这两个模块
三. 安装subversion
#cd subversion-1.6.6
#./configure --prefix=/opt/subversion --with-apxs=/opt/Apache2/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-ssl --with-zlib=/usr/lib --enable-maintainer-mode
#make
#make install
四. 配置subversion
1.创建账号密码文件
#mkdir -p /home/svnroot
#chown -R svnroot:svn /home/svnroot
2.创建资料库
首先要创建一个资料库(我使用单资料库的方式),使用svnadmin增加资料库
#cd /usr/local/subversion/bin
#./svnadmin create /home/svnroot/repository/pro1
到svnroot下看是不是多了文件,多了就是说明创建成功
htpasswd –c /home/svnroot/repository/pro1/conf/passwd prouser1
输入密码,两次确认
注意:第一次设置用户密码要加入 –c 这个参数
五. 配置apache的httpd.conf
打开apache的conf/httpd.conf, 安装subversion后,apache的conf/httpd.conf文件会自动增加了模块配置
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
相应的so文件也自动copy到了apache/modules。这些工作就不用自己动手了。
需要自己动手修改apache下的httpd.conf最后增加以下内容
DAV svn
SVNPath /home/svnroot/repository/pro1 #版本库的目录
AuthType Basic
AuthName "Subversion repository" #欢迎语言
AuthUserFile /home/svnroot/pro1/conf/passwd #密码文件
Require valid-user
注意:
1. SVNPath一定要跟./svnadmin create /home/svnroot/repository/pro1的目录一样
2. 目录svnroot的权限设置成755
3. 因为要用HTTP服务器Apache,Apache安装后默认的属主和属组的配置为daemon和daemon,
所以其中属主和数组改为svnroot:svn,否则创建的仓库没有写的权限,当客户端上传文件会报类似的错误:
svn: Can't create directory '/subversion/main/db/transactions/0-1.txn': Permission denied
修改后的/opt/Apache2/conf/httpd.conf文件中的配置如下:
......
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
#User daemon
#Group daemon
User svnroot
Group svn
......
六.修改版本库配置文件
版本库1:
# vi /home/svnroot/repository/pro1/conf/svnserve.conf
内容修改为:
[general]
anon-access = none
auth-access = write
password-db = /home/svnroot/repository/pro1/conf/passwd
authz-db = /home/svnroot/repository/pro1/conf/authz
realm = pro1
七.启动Apache
# ./apachect1 start
【附】
vi /usr/local/apache/conf/httpd.conf
//在最下面添加,我在配置的时候,下面这两句话是自动加上的,可以不加
#LoadModule dav_svn_module modules/mod_dav_svn.so
#LoadModule authz_svn_module modules/mod_authz_svn.so
DAV svn
SVNParentPath /home/svnroot/repository/ //svn父目录
AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件
AuthType Basic //连接类型设置
AuthName "Subversion.zoneyump" //连接框提示
AuthUserFile /home/svnroot/repository/authfile //用户配置文件
Require valid-user //采用何种认证
//其中authfile是通过
htpasswd -b -c /home/svnroot/repository/authfile username password
//来创建的
//"Require valid-user"告诉apache在authfile中所有的用户都可以访问。
2)权限分配
配置用户访问权限,用于定义用户组和版本库目录权限
# vi /home/svnroot/repository/authz.conf
注意:
* 权限配置文件中出现的用户名必须已在用户配置文件中定义。也就是在前面用htpasswd添加的用户
* 对权限配置文件的修改立即生效,不必重启svn。
用户组格式:
[groups]
用户组名 = 用户1,用户2
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。
版本库目录格式:
[版本库:/项目目录]
@用户组名 = 权限
用户名 = 权限
其中,方框号内部分可以有多种写法:
/,表示根目录及以下。根目录是svnserve启动时指定的,我们指定为/home/svnroot/repository。这样,/就是表示对全部版本库设置权限。
test:/,表示对版本库test设置权限
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。
示例:
[groups]
admin = mangosoft
[/]
@admin = rw
[test:/]
@admin = rw
lsw = rw
jackey=rw
删除Subversion默认安装库文件权限文件authz,passwd
# rm /home/svnroot/repository/test/conf/authz
# rm /home/svnroot/repository/test/conf/passwd
测试
如果顺利的话,就可以通过http://localhost/svn/test访问了,GoodLuck!
1、相关软件下载:
访问http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=260&expandFolder=74
从下载列表下载最新版本:
subversion-1.6.9.tar.gz 和subversion-deps-1.6.9.tar (包括apr的一些库)
2、解压缩。
#gunzip subversion-1.6.9.tar.gz
#gunzip subversion-deps-1.6.9.tar
注意,subversion-deps-1.4.6.tar.gz 会解压到subversion-1.6.9目录下。
3、编译安装
#./configure --prefix=/opt/subversion
如果提示:
configure: error: We require OpenSSL; try --with-openssl
#./configure --prefix=/opt/subversion --with-openssl=/usr/bin
#make
#make install
6、创建项目目录 mkdir -R /fileServer/app/subversion/project
7、创建资料库
{subversion}/bin/svnadmin create /fileServer/app/subversion/project
8、修改配置
/path/to/repos/conf/passwd 增加用户和口令(明码)
/path/to/repos/conf/svnserve.conf配置如下
anon-access = none
password-db = passwd
9、验证安装 svnadmin --version
10、启动服务 svnserve --daemon --root /fileServer/app/subversion/project
11、验证服务 #lsof -i :3690
12、下载客户端 http://sourceforge.net/projects/tortoisesvn/
13、配置Eclipse使用Subversion
打开Eclipse的菜单Help > Software Updates > Find and Install ......URL:http://subclipse.tigris.org/update_1.0.x
窗口 > 显示视图 > 其他,选择SVN资源库,在视图中右键 新建>资源库位置,输入svn://168.168.1168.168,OK
eclipse插件下载
./configure --with-apxs=/opt/apache2/bin/apxs --with-apr=/opt/apache2 --with-apr-util=/opt/apache2 --prefix=/opt/subversion-1.6.9
./configure --prefix=/opt/Apache2 --enable-so --enable-dav --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
make
make install
./configure --prefix=/opt/subversion --with-apxs=/opt/Apache2/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-ssl --with-zlib=/usr/lib --enable-maintainer-mode
make
make install
mkdir -p /home/svnroot
----------------------------------
Apache2实现限制IP访问服务
用 deny 和 allow 来实现
例如:
Deny from all
allow from 162.105.166.111
http://ja00159.j01.netjsp.com/tec/index.jsp?xwz=0012
发表评论
-
挂载磁盘
2017-02-27 14:59 0fdisk -l mkfs.ext4 /dev/xv ... -
linux https nginx
2016-06-08 09:14 469##创建证书存放目录:mkdir /usr/loc ... -
不是apache进行ab测试
2015-05-20 15:21 389930 wget http://apache.faye ... -
修改linux允许打开文件最大数
2015-05-18 13:39 661设置用户最大打开文件数:vi /etc/security/l ... -
linux ftp 安装笔记
2015-01-19 17:05 487配置Vsftpd 安装完之后我们要对它进行配置,才能正常 ... -
nginx php-fpm安装配置
2014-12-26 22:03 751http://www.nginx.cn/231.ht ... -
linux笔记
2015-01-12 13:46 373删除10天以外的数据: find ./ -type f ... -
Linux centos 搭建SVN 服务器
2014-03-20 17:08 650一. SVN 简介 Subversion( ... -
linux命令记录
2013-12-20 17:14 0rsync --daemon --config /etc ... -
svn添加用户
2013-11-19 16:42 1167转载:http://blog.chinaunix.ne ... -
magent+memcached 配置问题详解
2013-11-04 14:28 1344一.软件下载 wget http://memcached. ... -
linux上运行java工程脚本
2013-04-02 09:40 674#!/bin/bashecho ""ech ... -
linux下tomcat的安装
2013-03-05 09:12 679本文主要内容:(1)安装apr,这是 Apache 为了 ... -
centos 5.4+mysql5.5 解压版
2012-11-24 16:55 0http://www.iteye.com/topic/1128 ... -
CMAKE参数参考
2012-11-24 15:17 684CMAKE参数参考MAKE_INSTALL_PREFIX my ... -
linux定时任务的设置
2012-11-24 08:55 722为当前用户创建cron服务 ... -
ssh能够连接而sftp不能连接的解决方法
2012-11-19 15:24 4662ssh能够连接而sftp不能连接的解决方法 昨天 ... -
LINUX配置双机SSH信认,并用public key认证登录
2012-04-23 01:01 1620http://blog.itpub.net/15693674/ ... -
centos5.4ftp安装方法
2011-02-23 22:25 774a.在光盘中找到 F:\LinuxTool\CentOS\Ce ... -
【Linux】redhat enterprise 5 如何正确安装gcc
2010-11-10 21:11 1533安装步骤及正确的安装顺序: rpm -ivh ke ...
相关推荐
本文将详细讲解如何在Linux系统上安装和配置Apache Web服务器以及Subversion版本控制系统。 首先,Linux作为开源操作系统,是许多服务器的基础,其稳定性和安全性深受开发者喜爱。在本案例中,我们将使用它作为平台...
本配置说明主要针对Apache 2.2.29和Subversion 1.8.13版本进行安装和配置,以实现SVN仓库的跨版本库迁移,并保留提交日志。 首先,我们需要准备以下软件包: 1. Apache HTTP Server(httpd-2.2.29) 2. Subversion...
Linux环境下搭建Subversion(简称svn)服务器,主要涉及到两个方面:一是Subversion自身服务的搭建,二是与Apache服务器的集成。Subversion是一个开源的版本控制系统,用于跟踪文件和目录的变更,便于团队协作开发。...
在Linux环境下,构建一个SVN(Subversion)代码服务器,特别是使用Apache2.2.23作为前端Web服务器,Subversion1.6作为版本控制系统,是开发者常用的实践。以下是搭建这个环境的详细步骤: 首先,确保你的Linux系统...
总结来说,CentOS上Apache和Subversion的安装涉及下载源码、安装依赖、编译安装软件、配置Apache以支持SVN以及创建和配置版本库。整个过程需要对Linux系统、Apache服务器以及Subversion有一定了解,但遵循上述步骤,...
Apache Subversion(简称 SVN)是一个开源的版本控制系统,用于管理和跟踪文件和目录的变更。它允许团队成员协同工作,共享和追踪项目代码的不同版本。下面是一些关于 Apache Subversion 的要点: 版本控制:SVN ...
【Subversion 在 Linux 下的安装与配置】 Subversion(简称 SVN)是一款强大的开源版本控制系统,它跟踪文件和目录的变化,管理文件的历史版本,允许用户在时间轴上回溯到任何特定版本。Subversion 可以作为Apache...
【Linux下Apache+SVN配置详解】 Apache HTTP Server(通常简称为Apache)是世界上最流行的Web服务器软件之一,而Subversion(简称SVN)则是一种版本控制系统,用于管理软件项目的源代码和其他文件。Apache与SVN结合...
在Ubuntu环境下搭建SVN(Subversion)服务器,结合Apache HTTP服务器和SSL(Secure Sockets Layer)加密,能够实现安全的版本控制系统,并通过HTTPS协议进行访问。Apache的用户认证管理确保了权限控制,而authz配置...
- 在大多数Linux发行版中,可以通过包管理器如`apt`或`yum`来安装Apache。例如,在Ubuntu上,可以运行`sudo apt-get install apache2`。 - 安装完成后,确保Apache服务已经启动并配置为开机启动,可以使用`...
为了在 Linux 环境下安装 Subversion,需要安装相关依赖包,包括 OpenSSL、zlib 和 Apache。 一、安装依赖包 1. 安装 OpenSSL:OpenSSL 是一个安全套件,Subversion 需要它来提供加密功能。安装过程中可能会报错,...
本篇文章将深入讲解如何在Linux环境中安装和配置Subversion 1.4.5版本。 首先,我们需要了解Subversion的基本概念。Subversion是一个集中式的版本控制系统,它维护着项目文件的历史版本,使得团队成员可以同时工作...
Apache作为Web服务器,Subversion是一个集中式的版本控制系统,而TortoiseSVN则是Subversion的一个图形化客户端,使得用户在Windows环境下操作更加方便。 首先,我们需要了解Apache的安装和配置。Apache是开源的...
在Linux环境下搭建Subversion (SVN) 和 Apache 的联合服务是一种常见的版本控制系统部署方案。通过Apache作为前端服务器,可以利用HTTP协议方便地进行SVN仓库的管理和访问。本文将详细介绍在Linux环境下搭建SVN + ...
本文将深入探讨如何在Linux系统中配置Apache Web服务器与Subversion(SVN)版本控制系统,以便实现高效且安全的代码管理和协作。首先,我们从安装Apache开始。 1. **安装Apache** Apache是流行的开源Web服务器,...
### Apache + SVN 安装与配置详解 #### 概述 在软件开发过程中,版本控制系统是必不可少的工具之一。Subversion(简称SVN)作为一款经典的集中式版本控制系统,在项目管理方面发挥着重要作用。而Apache作为一款...
在IT行业中,Linux系统,尤其是Ubuntu,经常被用于服务器部署,因为它的稳定性和开源特性。Apache作为世界上最流行的HTTP服务器软件,常被用来提供Web服务,而Subversion(SVN)则是一个版本控制系统,用于管理软件...