安装版本
Apache
http://archive.apache.org/dist/httpd/httpd-2.2.16.tar.gz
Svn
http://subversion.tigris.org/downloads/subversion-1.6.0-rc2.tar.gz
http://subversion.tigris.org/downloads/subversion-deps-1.6.0-rc2.tar.gz
apr
http://mirror.bjtu.edu.cn/apache/apr/apr-1.4.5.tar.gz
apr-util
http://mirror.bjtu.edu.cn/apache/apr/apr-util-1.3.12.tar.gz
先安装下apr
# tar -zxvf apr-1.4.5.tar.gz -C ../software
#cd ../software/apr-1.4.5
#./configure --prefix=/usr/local/apr
#make && make install
安装apr-util
#tar -zxvf apr-util-1.3.12.tar.gz -C ../software
# cd ../software/apr-util-1.3.12
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
#make && make install
安装apache
#tar -zxvf httpd-2.2.16.tar.gz -C ../software
#cd ../software/httpd-2.2.16
#./configure --prefix=/usr/local/apache2 --enable-dav --with-mpm=worker --enable-so --enable-rewrite --enable-headers --enable-expires --enable-mods-shared=all --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
#make && make install
#/usr/local/apapche2/bin/apachectrl start
访问下出现IT's work 说明apache安装成功
安装svn
# ./configure --prefix=/usr/local/svn --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-ssl --with-zlib=/usr/local/lib --without-berkeley-db --enable-maintainer-mode
#make && make install
#/usr/local/svn/bin/svnserve --version
如果出现svn的版本号就说明安装成功
现在我们来建库
#mkdir /home/svnrepo
/usr/local/svn/bin/svnadmin -create /home/svnrepo/fae
(fae下有东西,就说明建库成功)
建立svn用户
#mkdir /usr/local/svn/conf
#/usr/local/apache2/bin/htpasswd -c /usr/local/svn/conf/authuser.conf test 123456
(用户名)用户权限的分配
#cd /usr/local/svn/conf/
#vim authaccess.conf
[groups]
admin=test 建立用户组
[fae:/] test项目的访问权限
@admin=rw admin这个组有读写权限
*=r 所有用户都用读的权限
apache的配置
#vim /usr/local/apache2.2.16/conf/http.conf
自动会添加这两个模块
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
#vim /usr/local/apache2.2.16/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerName lin.com
<Location /svn/>
DAV svn
SVNListParentPath On 加上这条就有项目列表
SVNParentPath /home/svnrepo 如果是指定到单个项目用svnpath
AuthzSVNAccessFile /usr/local/svn/conf/authaccess.conf
AuthUserFile /usr/local/svn/conf/authuser.conf
AuthType Basic
AuthName "SS SVN Repository"
Require valid-user
</Location>
</VirtualHost>
或者 vim /usr/local/apache2/conf/httpd.conf 最后添加
<Location /svn>
DAV svn
SVNParentPath /home/svnrepo
AuthzSVNAccessFile /usr/local/svn/conf/authaccess.conf
AuthUserFile /usr/local/svn/conf/authuser.conf
AuthType Basic
AuthName "SS SVN Repository"
Require valid-user
</Location>
重启apache
web 浏览器中输入http://ip/svn/fae/,输入用户名和密码就能浏览到了
在编译过程中遇到的问题解决
1.apr找不到
按照这样的安装方式应该不会有apr的问题了,如果你安装的apache2.2以上的版本,要安装的apr与apr-unil是1.2以上版本
2.如果提示configure: error: Subversion requires SQLite
按照提示下载
#wget http://www.sqlite.org/sqlite-amalgamation-3.6.10.tar.gz
# tar -zxvf sqlite-amalgamation-3.6.10 -C ../software
解压缩后将文件夹名字改为sqlite-amalgamation,将文件夹整个迁移到/usr/local/src/subversion-1.7.0文件夹下
如果svn是1.7.0版本需要下载sqlite-amalgamation-3070900,压缩包,windows下解压缩后,然后将其中的文件都传
到/usr/local/src/subversion-1.7.0/sqlite-amalgamation文件下
http://download.csdn.net/detail/liuzg668/2793732 这个网址可以下载到3.7.3版本
3.如果提示configure: error: –with-zlib requires an argument
#tar -zxvf subversion-deps-1.6.0-rc2.tar.gz ../software
#cd /usr/local/src/software/subversion-1.6.0-rc2/zlib
#./configure --share
#make && make install
4.如果提示
configure: error: could not find library containing RSA_new
configure failed for neon
说明neon的版本过低
#wget http://www.webdav.org/neon/neon-0.29.0.tar.gz
#tar -zxvf neon-0.29.0.tar.gz -C ../software
# mv neon-0.29.0 /usr/local/src/software/subversion-1.6.0-rc2/neon
或者是没有安装这4个开发软件
#yum install *openssl-devel*
#yum install *e2fsprogs-devel*
#yum install *krb5-devel*
#yum install *zlib-devel*
5.安装完如果碰见500错误查看下配置是否错误
比如 AuthUserFile "/usr/local/svn/conf/passwd"
AuthzSVNAccessFile "/usr/local/svn/conf/authz"
的路径是否有错