suse在安装svn和apache
1. 前言
由于工作的需要,要在suse系统下安装svn和apache,参考了几篇文章,错误也不少,幸亏同事指点了一下才成功了。本文写下详细的教程, 希望后来的朋友一看这个教程就能顺利安装,不要再走弯路。
============================================================================
2. 安装前准备
下载以下软件:
A. libxml2-sources-2.7.7.tar.gz
B. zlib-devel-1.2.3-141.1.i586.rpm
C. httpd-2.2.4.tar.bz2
D. subversion-1.4.3.tar.bz2
E. subversion-deps-1.4.3.tar.bz2
A和B不一定要安装,如果在安装httpd时不能成功,再安装。
先安装apache:
httpd是web服务器,httpd和subversion 配合,可用来通过web访问subversion,得到httpd-2.2.4.tar.bz2文件后,通过以下命令解压:
tar -jxvf httpd-2.2.4.tar.bz2
进入解压后的目录后,执行
./configure --enable-dav --enable-so --enable-nonportable-atomics
其中:
--enable-dav允许Apache提供DAV协议支持;
--enable-so允许运行时加载DSO模块 ;
--enable-nonportable-atomics可以在486以上的CPU上启用更加高效的基于互斥执行的原子操作。
前两个参数是必须要加的,你还可以根据您的需要添加其他的参数。
完成后使用make命令编译httpd,执行make install则完成对httpd的安装,默认路径为/usr/local/apache2。
安装svn:
解压: tar -jxvf subversion-1.4.3.tar.bz2
tar -jxvf subversion-deps-1.4.3.tar.bz2
解压后会合并成一个目录: subversion-1.4.3
/configure --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apache2 --with-apr-util=/usr/local/apache2
其中:
--with-apxs 用于生成apache httpd的mod_dav_svn和mod_authz_svn模块;
--with-apr 和 --with-apr-util参数指向 Apache 的安装根目录,而不是使用缺省的 SVN 安装包中自带的 apr ,否则如果你安装的 Apache 版本不同有可能导致 APR 库不匹配,出现类似:
Can't set position pointer in file '/svn/test/db/revs/1': Invalid argument 的错误。(同样可以通过 --prefix参数指定安装目录)
Configure完成后,执行make和make install命令完成安装。
Subversion编译完成后会自动在 /usr/local/apache2/conf/httpd.conf 添加
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
这两行,并且将生成的mod安装到apache2的modules目录。