`
BlueFuture
  • 浏览: 53337 次
  • 性别: Icon_minigender_1
  • 来自: 大连
最近访客 更多访客>>
社区版块
存档分类
最新评论

RHEL5+Subversion-1.6.0+Apache-2.2.11

阅读更多

RHEL5+Subversion-1.6.0+Apache-2.2.11

一、安装前的准备工作
1.下载 subversion-1.6.0.tar.gz,subversion-deps-1.6.0.tar.gz httpd-2.2.11.tar.gz,apr-1.3.3.tar,gz,
apr-util-1.3.4.tar.gz,zlib-1.2.3.tar.gz.
2.rpm -qa|grep httpd apr subversion ,如果有的话,全部卸载.
 
二、开始安装

1.安装apr
cd apr
./configure
make
make install
 
2.安装apr-util
cd apr-util
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
make
make install
 
3.安装zlib
cd zlib
./configure
make
make install
 
4.安装httpd
tar zxvf httpd-2.2.11.tar.gz
cd httpd-2.2.11
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --enable-so --enable-dav --enable-maintainer-mode --enable-rewrite
make
make install
 
5.解压subversion
tar zxvf subversion-1.6.0.tar.gz
tar zxvf subversion-deps-1.6.0.tar.gz (这个解压后会放到前面一个解压的目录里的)

安装serf
cd subversion-1.6.0/serf
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/
make
make install
 
安装 neon
cd subversion-1.6.0/neon
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/
make
make install
 
安装 sqlite
cd subversion-1.6.0/sqlite-amalgamation
./configure --prefix=/usr/local/sqlite3
make
make install
 
6.安装subversion
cd subversion-1.6.0
./configure --prefix=/usr/local/svn --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-sqlite=/usr/local/sqlite3 --with-ssl --with-zlib=/usr/lib --enable-maintainer-mode
make
make install

注意:configure时会警告要DBD的支持,可以忽略,但我们还是把它装上
 
7.安装db-4.7.25.tar.gz
tar -zxvf db-4.7.25.tar.gz
cd db-4.7.25/dist
./configure
make
make install
vi /etc/ld.so.conf 加入下面一行
/usr/local/BerkeleyDB.4.7/lib #保存
ldconfig
cp /usr/local/BerkeleyDB.4.7/include/* /usr/include   
cp /usr/local/BerkeleyDB.4.7/lib/* /usr/lib
重新执行安装  

三、配置
1.vi /usr/local/apache/conf/httpd.conf 查看是否有如下2行,有就对了
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

2.建立版本库
mkdir /code (代码的根目录,根据自己情况)
/usr/local/svn/bin/svnadmin create /code/test (建一个test项目)
ls /code/test 里面多了些文件就对了

3.配置Apache来支持SVN
vi /usr/local/apache/conf/httpd.conf
在末尾加上如下内容:
<Location /svn>
   DAV svn
   SVNParentPath /code #svn父目录
   AuthzSVNAccessFile /code/authz.conf #权限配置文件
   AuthType Basic    #连接类型设置
   AuthName "Subversion" #连接框提示
   AuthUserFile /code/authfile  #用户配置文件
   Require valid-user  #采用何种认证
</Location>
保存退出
 
4.启动 apache 
./usr/local/apache2/bin/apachectl start 
打开IE,输入:http://IP/svn/test  http://localhost/svn/test
会弹出一个输用户和密码的框就对了
 
5.创建用户配置文件
htpasswd -c /code/authfile user1
回车输入密码 (-c是第一次要创建文件)
htpasswd /code/authfile user2
回车输入密码
  .
  .等
 
6.创建权限配置文件
vi /code/authz.conf
[test:/]
user1 = rw
user2 = r
保存退出
注:
 [test:/] //这表示,仓库test的根目录下的访问权限
    user1 = rw //test仓库user1用户具有读和写权限
    user2 = r //test仓库user2用户具有读权限
    [test2:/] //test2仓库根目录下的访问权限
    user1 = r //user1用户在test2仓库根目录下只有读权限
    user2 = //user2用户在 test2仓库根目录下无任何权限
   [/] //这个表示在所有仓库的根目录下
   * = r //这个表示对所有的用户都具有读权限
   #[groups] //这个表示群组设置
   #svn1-developers = user1, user2 //这个表示某群组里的成员
   #svn2-developers = user1
   #[svn1:/]
   #@svn1-developers = rw //如果在前面加上@符号,则表示这是个群组权限设置
 
7.重启Apache
./usr/local/apache2/bin/apachectl restart 
打开IE,输入:http://IP/svn/test  http://localhost/svn/test
会弹出一个输用户和密码的框
输入你的添加的用户和密码就ok了
8.创建svn自启动
   需要在/etc/profile文件内容的最后添加以下几行语句:
       PATH=$PATH:/usr/local/svn/bin
       export PATH
       svnserve -d
   其中:/usr/local/svn/bin是svn的安装路径。
   前两句的目的是为了实现svn的命令在任何目录上都可以使用。
   另外一个让linux启动是自动启动svn服务的办法是在/etc/rc.local文件里添加下面的语句:
        usr/local/svn/bin/svnserve -d
    其中:/usr/local/svn/bin是svn的安装路径。
    两种方法你可以任选其中一个都行。
9.创建apache自启动
   有两种方法可以让Apache在系统启动时自动启动。

  1. 在/etc/rc.d/rc.local中增加启动apache的命令,例如:/usr/local/httpd/bin/apachectl start

  2. 将apache注册为系统服务

      首先将apachectl命令拷贝至/etc/rc.d/init.d目录下,改名为httpd

      使用编辑器打开httpd文件,并在第一行#!/bin/sh下增加两行文字如下

         # chkconfig: 35 70 30
         # description: Apache

      接着注册该服务

      chkconfig –-add httpd

       一切OK了,启动服务

      service httpd start

     其中所增加的第二行中三个数字第一个表示在运行级别3和5下启动apache,第二、三是关于启动和停止的优先级配置,无关紧要。

分享到:
评论

相关推荐

    compat-libstdc++-33-3.2.3-72.el7.x86_64.rar

    在实际操作中,如果你的系统是RHEL 7且需要运行依赖于旧版libstdc++的程序,可以使用"compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm"这个包;同样,如果是RHEL 6,应使用"compat-libstdc++-33-3.2.3-69.el6.x86_64....

    compat-libstdc++-33

    `compat-libstdc++-33`是Red Hat Enterprise Linux (RHEL)及CentOS等基于RPM包管理系统的Linux发行版中的一个兼容库。这个库的主要功能是提供旧版的GNU C++标准库(libstdc++)接口,以便运行那些依赖较老版本C++库...

    libstdc++-4.8.2-16.el7.rar

    这个压缩包“libstdc++-4.8.2-16.el7.rar”包含了针对Red Hat Enterprise Linux 7 (RHEL 7)平台的两个版本:i686和x86_64架构的RPM包,分别是libstdc++-4.8.2-16.el7.i686.rpm和libstdc++-4.8.2-16.el7.x86_64.rpm。...

    compat-libstdc++-33-3.2.3(x86_64)

    "compat-libstdc++-33-3.2.3(x86_64)"是其中一个关键的依赖组件,它与Oracle 11g的兼容性紧密相关。 `compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm`是一个针对x86_64架构的Linux系统的RPM软件包,它的主要功能是...

    linux库:compat-libstdc++-33-3.2.3-61

    `compat-libstdc++-33-3.2.3-61` 是一个针对Linux系统的兼容性库,主要用于支持旧版本的GNU C++标准库。 `compat-libstdc++` 的主要作用在于解决新版本的Linux系统与旧版应用或库之间的兼容问题。这个库包含了旧版...

    compat-libstdc++-33-3.2.3-69.el6.x86_64.rar

    《兼容库compat-libstdc++-33-3.2.3-69.el6.x86_64详解》 在Linux系统中,我们常常会遇到与软件兼容性相关的问题,特别是在旧版本系统上运行新编译的程序时。为了解决这类问题,开发者们创建了各种兼容库,其中`...

    compat-libstdc++-33 32位i686版

    `compat-libstdc++-33` 特别是版本3.2.3-69.el6,是为了解决Red Hat Enterprise Linux 6 (RHEL6)系统上的兼容性问题。RHEL6使用的是较新的`libstdc++`版本,但有些旧软件可能需要更早版本的库来运行。这个包使得用户...

    compat-libstdc++-33-3.2.3-61.i386.rpm

    RHEL5 64位的linux在/usr/lib下没有libstdc++.so.5这个文件,在安装一些软件的时候总是报这样的错误: &lt;br&gt;libstdc++.so.5: cannot open shared object file: No such file or directory &lt;br&gt;安装64位的包依然...

    compat-libstdc++-33-3.2.3-72.el7.i686.zip

    标题中的"compat-libstdc++-33-3.2.3-72.el7.i686.zip"是一个特定的软件包,它包含了适用于32位系统(i686架构)的“compat-libstdc++-33”库。这个库是一个兼容性版本的GNU标准C++库,主要目的是为了支持某些旧版或...

    compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm

    Linux 7 compat-libstdc++-33-3.2.3-72 安装包,安装介质缺少的rpm

    compat-libstdc++-33-3.2.3-69.el6.x86_64

    总结一下,"compat-libstdc++-33-3.2.3-69.el6.x86_64"及其对应的32位版本是针对RHEL 6的兼容性库,它们提供了一个旧版的libstdc++实现,以确保旧版应用程序在新系统上的兼容性。RPM包管理机制使得安装和管理这些...

    compat-libstdc++-33-3.2.3-72.el7.x86_64/libaio-devel-0.3.105

    标题中的"compat-libstdc++-33-3.2.3-72.el7.x86_64"是一个重要的软件包,它在Linux环境中主要用于兼容性支持。这个包包含的是GNU标准C++库的一个特定版本(3.2.3),它允许运行那些依赖于旧版libstdc++的程序。在...

    compat-libstdc++-33-3.2.3-72.el7.x86_64,libaio-devel-0.3.105[i38

    标题中的"compat-libstdc++-33-3.2.3-72.el7.x86_64"和"libaio-devel-0.3.105[i38"提到了两个重要的Linux软件包,它们在IT领域中扮演着特定的角色。 1. **compat-libstdc++-33-3.2.3-72.el7.x86_64**: 这个包是针对...

    compat-libstdc++-33-3.2.3-69.el6.i686.rar

    总的来说,“compat-libstdc++-33-3.2.3-69.el6.i686.rpm”是针对RHEL 6系统的一款32位兼容库,用于解决旧版GCC编译的应用与新版系统环境之间的兼容性问题。理解和正确使用这类兼容库,对于维护和管理Linux系统,...

    rhel-server-7.4-x86_64-boot.iso + rhel-server-7.4-x86_64-dvd.iso

    资源是Redhat7.4镜像文件的云盘链接,包括rhel-server-7.4-x86_64-boot.iso和rhel-server-7.4-x86_64-dvd.iso 仅供学习交流,严禁用于商业用途,请于24小时内删除

    rhel-server-7.1-x86_64-boot.iso + rhel-server-7.1-x86_64-dvd.iso

    资源是Redhat7.1镜像文件的云盘链接,包括rhel-server-7.1-x86_64-boot.iso、rhel-server-7.1-x86_64-dvd.iso和supp-server-7.1-rhel-7-x86_64-dvd.iso 仅供学习交流,严禁用于商业用途,请于24小时内删除

Global site tag (gtag.js) - Google Analytics