Linux下结合apache安装svn

用到的软件是一下5个:apr-1.3.5.tar.gz    apr-util-1.3.7.tar.gz    subversion-1.4.4.tar.gz   subversion-deps-1.4.4.tar.gz(本来是想安装比较新的1.6.2的版本的,但是linux的ssl不支持,只能退而求其次,装个比较低点的版本)httpd-2.2.11.tar.gz (apr和apache的版本要对应,0.9对2.0或者1.2以上对2.2)

1、安装apr-1.3.5和apr-util-1.3.7

1) # tar zxvf apr-1.3.5.tar.gz

    # cd apr-1.3.5   

    # ./configure

    #Make

    #make install

2) # tar zxvf apr-util-1.3.7.tar.gz

# cd apr-util-1.3.7

# . /configure --with-apr=/usr/local/apr

# make

# make install

2、安装apache 2.2.11

1)解包 httpd-2.2.11.tar.gz

# tar xzvf httpd-2.2.11.tar.gz

2) 生成配置文件

# ./configure --prefix=/usr/local/apache2 --enable-dav --enable-modules=so --enable-maintainer-mode --enable-rewrite --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config

3)生成make文件,并安装

# make

   # make install

4)启动Apache服务:

# /usr/local/apache2/bin/apachectl start

5)浏览网站:

用浏览器查看http://localhost/,得到it works,说明apache已经配置成功了。

一下两步可以选择操作或者不操作,看个人。

6)停止Apache服务:

# /usr/local/apache2/bin/apachectl stop

7)设置启动系统后,自启动Apache服务

编辑etc/rc.d/rc.local

# vi /etc/rc.d/rc.local

在最后加上一句: /usr/local/apache2/bin/apachectl start

3、安装subversion

1)解包

# tar xvzf subversion-1.4.4.tar.gz

# tar xvzf subversion-deps-1.4.4.tar.gz

2)转入解包目录并生成配置文件

# cd subversion-1.4.4

SVN 依赖的APR版本要正确。如果Apache为2.0.x,对应的APR版本应为0.9.x;Apache为2.2.x,对应的APR版本应为1.2.x。 由于subversion-deps包里的APR是0.9.x的,因此编译svn时要删除从deps里解压出来的apr, apr-util,改而使用apache 2.2里提供的。(这里指定为开始安装的apr目录)

如果apache不是安装在默认路径,configure必須加上--with-apxs选项,如:./configure --with-apxs=/usr/local/apache2/bin/apxs(此目录为我的apache安装目录)

# rm -rf apr    (删除subversion-deps-1.4.4自带的apr和apr-til)

# rm -rf apr-util

#./configure --with-apxs=/usr/local/apache2/bin/apxs --prefix=/usr/local/subversion --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-ssl --with-zlib --enable-maintainer-mode

3)编译安装

# make

   # make install

4)查看subversion两个动态库有没有安装成功

    # vi /usr/local/apache2/conf/httpd.conf

看到下面两个模块说明安装成功

LoadModule dav_svn_module    modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

5 )配置apache 支持svn

# vi / usr/local/apache2/conf/httpd.conf

在文件末尾加上

例子:

<Location /svn>(svn为通过地址访问subversion的根目录名,以svn为例:http://xxx.xxx.xxx.xxx/svn/具体库名)

DAV svn

      SVNParentPath /subversion/project (此处配置你的版本库根目录,project不是上面提到的具体库名)

      AuthType Basic

      AuthName "Subversion repository" (此处字符串内容修改为提示对话框标题)

    AuthUserFile /subversion/passwd    (此处修改为访问版本库用户的文件,用apache 的 htpasswd命令生成)

      AuthzSVNAccessFile /subversion/authfile (此处修改为访问版本库权限的文件)

      Require valid-user

</Location>


6 )建立版本库

先创建版本根目录

# mkdir -p /subversion/project/test

/usr/local/subversion/bin/svnadmin create /subversion/project/test

进入到版本库 test中执行ls

# cd /subversion/project/test


# ls 后看到以下文件夹及文件,则表示建库成功

conf dav db format hooks locks README.txt

7 ) 建立访问库用户文件

# /usr/local/apache2/bin/htpasswd –cm /subversion/passwd liruixuan(第一次添加用户需先创建文件,所以有参数-c,以后添加用户可以不用添加参数;linux是大小写敏感的,一定要注意)


按照提示输入密码

8 )建立访问库权限文件

# vi /subversion/authfile


内容按照以下格式

[groups](此语句块是为了将用户分组,为后面权限分配提供方便,这里分了两组)


admin = liruixuan

[/]

@admin = rw

以上语句是说admin组对仓库有读写权限

9)重启apache

#cd /usr/local/apachee/bin/apachectl restart

现在可以用浏览器浏览linux下的仓库test了,http://ip/svn/test

你可能感兴趣的:(apache,linux,SVN,浏览器,subversion)