1.软件获取
apache下載地址
http://httpd.apache.org/
subversion下載地址
http://subversion.tigris.org/
apr下載地址
http://apr.apache.org/
sqllite下載地址
http://www.sqlite.org/download.html
neon下载地址,Eclipse插件,可以不安装
检查本地是否已经安装apahce和svn,如果已经安装,请卸载,可采用rpm及yum方式卸载
# rpm -qa | grep httpd
# rpm -qa | grep subversion
3.安装zlib库
#tar xvf zlib-1.2.8.tar.gz
#cd zlib-1.2.8
#./configure --prefix=/usr/local/zlib && make && make install
4.安装pcre
#tar zxvf pcre-7.8.tar.gz
#cd pcre-7.8
#./configure --prefix=/usr/local/pcre-7.8 && make && make install
5.安装sqlite数据库
#tar zxvf sqlite-autoconf-3140100.tar.gz
#cd sqlite-autoconf-3140100/
#./configure --prefix=/usr/local/sqlite && make && make install
6.安裝Apr和Apr-util
#tar zxvf apr-1.5.2.tar.gz
#cd apr-1.5.2 &&
# ./configure --prefix=/usr/local/apr && make && make install
#tar zxvf apr-util-1.5.4.tar.gz
#cd apr-util-1.5.4
#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-sqlite3=/usr/local/sqlite/ && make && make insatll
7.安装apache
#tar zxvf httpd-2.4.23.tar.gz
#cd httpd-2.4.23
#./configure --prefix=/usr/local/httpd-2.4 --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --enable-modules=all --enable-dav --enable-dav-fs --enable-maintainer-mode --enable-rewrite --with-pcre=/usr/local/pcre-7.8 && make && make install
注:--enable-dav --enable-dav-fs 参数必须,用于支持svn模块
8.安装subversion
#tar zxvf subversion-1.9.4.tar.gz
#cd subversion-1.9.4
#./configure --prefix=/usr/local/subversion
--with-apxs=/usr/local/httpd-2.4/bin/apxs
--with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/
--with-sqlite=/usr/local/sqlite/ --with-zlib=/usr/local/zlib && make && make install
9.配置subversion
在编译目录下获取,拷贝相关类库
#cp_/root/software/subversion-1.9.4/subversion/mod_dav_svn/.libs/dav_svn.so /usr/local/httpd-2.4/modules/
#cp /root/software/subversion-1.9.4/subversion/mod_authz_svn/.libs/mod_authz_svn.so /usr/local/httpd-2.4/modules/
创建svn项目的根目录
#mkdir /data/svn
添加svn的验证文件
#/usr/local/httpd-2.4/bin/htpasswd -cm /data/svn/svn-auth.conf admin
New password:
Re-type new password:
Adding password for user admin
注:只有第一次需要加-c參數,後期再添加用戶千萬不能加-c,否則會將原文件覆蓋的,如下:
#/usr/local/httpd-2.4/bin/htpasswd -m /data/svn/svn-auth.conf test
New password:
Re-type new password:
Adding password for user test
配置svn權限控制文件svn-access.conf
# vim /data/svn/svn-access.conf 内容如下
[groups] #组及用户
admin = admin
developers = test01.test02
[project1:/] #project1为版本库名称及项目权限
@developers = rw
@admin = rw
* = r
配置apache
# vim /usr/local/httpd-2.4/conf/httpd.conf
查找LoadModule
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
並在配置文件最後添加
<Location /svn>
DAV svn
SVNParentPath /data/svn
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /data/svn/svn-auth.conf #账号控制文件
Require valid-user
AuthzSVNAccessFile /data/svn/svn-access.conf #权限控制文件
</Location>
10.新建一个项目库
# svnadmin create /data/svn/project1
增加权限
#groupadd subversion
#usermod -G subversion -a apache
更改版本库所属用户、组
#chown -R root:subversion /data/svn/project1
#chmod -R g+rwx /data/svn/project1
11.启动apache,进行验证
#/usr/local/httpd-2.4/bin/apachectl -t 验证配置文件
#/usr/local/httpd-2.4/bin/apachectl 启动apache
#ps -ef | grep httpd
[验证]
在瀏覽器中輸入http://IP/svn/project1如果輸出
project1 - Revision 0: /
即表示成功
http://www.ttlsa.com/svn/install-svnserve-on-linux/
http://www.cnblogs.com/liuxianan/p/linux_install_svn_server.html
启动方式,可以启动多个项目(svn进程)
svnserve -d --listen-port 4690 -r /var/svn/project1 --log-file /var/svn/project1/logs/svn.log --pid-file /tmp/svn.pid
-d 以daemon方式运行
--listen-port 监听端口号
-r 指定目录
--log-file 指定日志文件
--pid-file 指定pid文件