按以下方法,安装了SVN 服务器端,遇到了两个问题,一个是APACHE无法启动,后用另一种方法解决.
最大问题是后来配置好后,一直无法访问,出现:
Forbidden
You don't have permission to access /svn/mysvn on this server
.
错误,后分析,可能是目录权限问题,后来把版本库的目录权限修改成777 ,解决,
后面权限控制,再一步一步来解决,暂时先解决此问题.
-------------------------------------------------------------------------------------------
一、本向导适用的linux发行版本
Redhat系列:redhat9、redhat advance server、fedora、centOS
二、所需软件
?? Apache 2.0.59(http://archive.apache.org/dist/httpd/httpd-2.0.59.tar.gz)
?? Openssl 0.9.8e(http://www.openssl.org/source/openssl-0.9.8e.tar.gz)
?? Subversion 1.4.3(http://subversion.tigris.org/downloads/subversion-1.4.3.tar.gz)
注:
windows下的二进制包
http://subversion.tigris.org/downloads/svn-win32-1.4.3.zip
Linux下的附加包,安装时可以不使用此包,
http://subversion.tigris.org/downloads/subversion-deps-1.4.3.tar.gz)
三、安装过程
?? 创建svn专用的系统帐户
[root@]# useradd svn –d /home/svn
[root@]# passwd svn (使用此命令来更改用户svn的口令)
[root@]# chown –R svn /home/svn
然后退出root用户,以svn的身份登录。
?? 创建目录结构
[svn@]# cd /home/svn
[svn@]# mkdir pkgs
[svn@]# mkdir pkgs/open_ssl_dir
[svn@]# mkdir apache2
?? 将下载的apache/openssl/subversion安装包放在/home/svn/pkgs目录下
?? 创建自动编译的脚本文件/home/svn/pkgs/svn_install.sh
保存后将文件属性设为可执行[svn@]# chmod 777 svn_install.sh
然后运行该脚本文件[svn@]# ./svn_install.sh,将会自动编译
/home/svn/pkgs/svn_install.sh
#!/bin/sh
export SRC_HOME="/home/svn/pkgs"
export APACHE_VERSION="2.0.59"
export APACHE_HOME="/home/svn/apache2"
export OPEN_SSL_DIR="/home/svn/pkgs/open_ssl_dir"
export OPEN_SSL_VERSION="0.9.8e"
export SUBVERSION_VERSION="1.4.3"
echo ">> Install open_ssl"
cd ${SRC_HOME}
tar xvzf openssl-${OPEN_SSL_VERSION}.tar.gz
cd openssl-${OPEN_SSL_VERSION}
./config --prefix=${SRC_HOME} --openssldir=${OPEN_SSL_DIR}
make
make install
echo ">> Install Apache2"
cd ${SRC_HOME}
tar zxf httpd-${APACHE_VERSION}.tar.gz
cd httpd-${APACHE_VERSION}
./configure --prefix=${APACHE_HOME} --enable-suexec /
--enable-so --with-suexec-caller=bin /
--enable-ssl --with-ssl=${OPEN_SSL_DIR} --enable-cache /
--enable-ext-filter --with-z=/usr/include --enable-dav /
--with-layout=Apache --enable-headers=shared /
--enable-auth --enable-alias --enable-so --enable-proxy=shared /
--enable-proxy-http=shared --enable-rewrite=shared --enable-deflate=shared
make
make install
echo ">> Install SVN"
cd ${SRC_HOME}
tar zxf subversion-${SUBVERSION_VERSION}.tar.gz
cd subversion-${SUBVERSION_VERSION}
./configure --prefix=/home/svn/subversion-${SUBVERSION_VERSION} /
--with-zlib /
--with-apr=${APACHE_HOME} /
--with-apr-util=${APACHE_HOME} /
--with-apxs=${APACHE_HOME}/bin/apxs
make
make install
编译时出错,发现APACHE 不能启动.后用以下方法解决问题.
==================================
安装好apache后无法启动,出现如下错误:
error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
# ldd /usr/local/apache/bin/httpd
会看到这么一行
libiconv.so.2 => Not found
以前编译运行是可以的,可能是不久前升级了iconv库影响。在/usr/local/lib下可以找到libiconv.so.2,把/usr/local/lib加到路径中也不行。
在/etc/ld.so.conf中加一行/usr/local/lib,运行ldconfig( 我的文件目录为:/sbin/ldconfig)。再运行apache,OK。
ld.so.conf和ldconfig是维护系统动态链接库的。真不明白为什么iconv库安装时不把这一步也做了
本文地址:启动APACHE出现“error while loading shared libraries: libiconv.so.2”
TAG :libiconv.so, WEB服务器
============================
?? 配置系统PATH
编辑/home/svn/.bashrc,在最后加入下面内容:
export SVNHOME=/home/svn
export PATH=$PATH:$SVNHOME/apache2/bin
export PATH=$PATH:$SVNHOME/subversion-1.4.3/bin
四、配置SVN Server
?? 建立代码仓库(假设建立一个mylucysvn的仓库)
[svn@]# mkdir /home/svn/repos
[svn@]# svnadmin create --fs-type fsfs /home/svn/repos/mylucysvn
?? 配置apache
注意:以apache方式访问时,在eclipse中建立SVN连接信息时需要使用http://xxx:xx/xxx/的方式,而不是svn://xxx:xx/xxx/
编辑/home/svn/apache2/conf/httpd.conf,找到如下相应的section,并修改。