Linux Apache+Svn的配置过程
一、安装Apache
1.解压Apache安装包
tar zxvf httpd-2.2.21.tar.gz
2.配置Apache
cd httpd-2.2.21
useradd apache
groupadd apache
usermod -G apache apache
./configure --prefix=/opt/httpd/ --enable-deflate --enable-expires --enable-headers --enable-modules=most --enable-so --with-mpm=worker --enable-rewrite --enable-ssl --enable-mods-shared=all ---进行编译
make && make install ---安装
/opt/httpd/bin/apachectl start ---启动Apache服务
打开浏览器输入地址,如果出现“It works!"则安装成功。
二、安装Subversion
1.下载Subversion
2.解压Subversion
tar zxvf subversion-1.7.4.tar.gz
3.安装Subversion
cd subversion-1.7.4
./configure --with-apxs=/opt/httpd/bin/apxs --prefix=/opt/subversion/ --with-apr=/opt/httpd/ --with-apr-util=/opt/httpd/ --with-ssl --with-zlib --enable-maintainer-mode
make && make install
4.报错及解决方法
报错信息:
unpack the archive using tar/gunzip and copy sqlite3.c from the
resulting directory to:
/opt/software/subversion-1.7.4/sqlite-amalgamation/sqlite3.c
解决方法:
wget
unzip sqlite-amalgamation-3070800.zip
mkdir /opt/software/subversion-1.7.4(解压后的目录)/sqlite-amalgamation
cp sqlite3.c /opt/software/subversion-1.7.4/sqlite-amalgamation/
5.创建库文件所在目录
mkdir /opt/svn
chmod 766 /opt/svn
subversion/bin/svnadmin create /opt/svn/test ---test为仓库
cd /opt/svn/test
ll
total 24
drwxr-xr-x 2 root root 4096 Apr 23 14:30 conf
drwxr-sr-x 6 root root 4096 Apr 23 14:30 db
-r--r--r-- 1 root root 2 Apr 23 14:30 format
drwxr-xr-x 2 root root 4096 Apr 23 14:30 hooks
drwxr-xr-x 2 root root 4096 Apr 23 14:30 locks
-rw-r--r-- 1 root root 229 Apr 23 14:30 README.txt
conf 目录下存放了版本库的配置文件,包括用户访问控制和权限控制等内容。
db 目录下存放着 Subversion 所要管理的所有受版本控制的数据,不同的存储方式(Berkeley DB 或者 FSFS)下有着不同的目录结构,不过我们一般不用直接修改和查看这个目录下的内容
hooks 目录存放着钩子脚本及其模版(一种版本库事件触发程序)
locks 目录存放着 Subversion 版本库锁定数据
format 文件记录了版本库的布局版本号
6.修改Apache配置文件
vim /opt/httpd/conf/httpd.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /opt/svn ---表示 /opt/svn 下的每个子目录都是一个版本库。可以通过 服务器IP/svn/test,服务器IP/svn/ppp1 来访问。
AuthzSVNAccessFile /opt/svn/authz.conf ---权限配置文件
AuthType Basic
AuthName "SVN"
AuthUserFile /opt/svn/authfile ---用户配置文件
Require valid-user
</Location>
重启Apache :/opt/httpd/bin/apachectl restart