RHEL5.6上安装apache+svn文档

安装所用的软件

apr版本

http://archive.apache.org/dist/apr/apr-1.4.8.tar.gz

apr-util版本

http://archive.apache.org/dist/apr/apr-util-1.5.2.tar.gz

apache版本

http://archive.apache.org/dist/httpd/httpd-2.4.6.tar.gz

subversion版本for apache

http://archive.apache.org/dist/subversion/subversion-1.8.3.tar.gz


一、apr的安装

tar zvxf apr-1.4.8.tar.gz -C /usr/src/

cd /usr/src/apr-1.4.8/

./configure --prefix=/usr/local/apr

make && make install


二、apr-utl的安装

tar zvxf apr-util-1.5.2.tar.gz -C /usr/src/

cd /usr/src/apr-util-1.5.2/

./configure --with-apr=/usr/local/apr/

make && make install


三、apache的安装

tar zvxf httpd-2.4.6.tar.gz -C /usr/src/

cd /usr/src/httpd-2.4.6/

./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-utl=/usr/local/apr/bin/apu-1-config --enable-so --enable-dav

#需要安装pcre 本人使用自带的pcre,pcre默认自己安装 同时需要安装pcre-devel

#yum install -y pcre-devel

make && make install

#启动测试apache

/usr/local/apache/bin/apachectl start

elinks http:localhost --dump #出现 It works 即apache安装成功


四、subversion的安装

tar zvxf subversion-1.8.3.tar.gz -C /usr/src/

cd /usr/src/subversion-1.8.3/

./configure --prefix=/usr/local/svn --with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-openssl --with-zlib

#安装报错需要sqlit 根据提示下载http://www.sqlite.org/sqlite-amalgamation-3071501.zip

#unzip sqlite-amalgamation-3071501.zip -d /usr/src/subversion-1.8.3/

#将解压的文件改名

#cd /usr/src/subversion-1.8.3/

#mv sqlite-amalgamation-3071501/ sqlite-amalgamation/

#再重新运行configure

#如果还有警告应该就是没有安装openssl和zlib yum install openssl openssl-devel zilb zilb-devel -y

make && make install

#查看svn安装是否成功

/usr/local/svn/bin/svnserve --version


五、创建svn库

mkdir -pv /svn/repos

/usr/local/svn/bin/svnadmin create /svn/repos/www #创建仓库www

#模拟实际项目

mkdir /shell

vim /shell/a.sh

#!/bin/bash

echo "hello"

#将shell项目导入仓库www

/usr/local/svn/bin/svn import /shell file:///svn/repos/www -m "my shell project"

成功会显示

正在增加 (二进制) /shell/a.sh


提交后的版本为 1。


六、配置apache支持svn

vim /usr/local/apache/conf/httpd.conf

将这一行的#去掉:LoadModule dav_module modules/mod_dav.so

在下面添加这两行指定apache的svn模块路径

LoadModule dav_svn_module /usr/local/svn/libexec/mod_dav_svn.so

LoadModule authz_svn_module /usr/local/svn/libexec/mod_authz_svn.so

这一行的#也去掉 LoadModule dav_fs_module modules/mod_dav_fs.so

在末尾添加svn路径

<Location /svn>

DAV svn

SVNParentPath /svn/repos #仓库主目录

SVNListParentPath on #此行打开可以看见主目录的所有仓库,可以省略

AuthType Basic #连接类型设置基本验证

AuthName "Hello welcome to here" #验证时的欢迎信息

AuthUserFile /svn/passwd #验证的用户及密码文件

AuthzSVNAccessFile /svn/auth.conf #验证的权限文件

Require valid-user #声明用户密码文件的有效用户访问

</Location>

之后重启apache

/usr/local/apache/bin/apachectl restart

在浏览器中输入http://192.168.18.6/svn/www 提示输入用户及密码下面设置用户及密码,权限


七、配置svn访问权限

1、创建用户密码

/usr/local/apache/bin/htpasswd -c /svn/passwd tom

#-c是创建文件 即使用htpasswd创建的用户保存到passwd中,第二次创建用户就不需要-c了

#例/usr/local/apache/bin/htpasswd /svn/passwd jack

#回车后输入密码,即创建用户密码成功

2、编辑权限

vim /svn/auth.conf

[groups] #编辑权限组

admin = tom #组都包括哪些组员

develop = jack

[/] #所有仓库的根目录下的权限

* = r #*代表所有,任何人都可以读

[www:/] #仓库www的权限

tom = rw #用户tom的权限

@develop = r #组权限设置,在组前加@


八、所有设置好后重启apache和启动svn

1、/usr/local/apache/bin/apachectl restart

2、启动svn

/usr/local/svn/bin/svnserve -d -r /svn/repos/

#-d 参数表示以进程模式运行 -r 指定仓库目录

如何重启可以这样

killall svnserve

/usr/local/svn/bin/svnserve -d -r /svn/repos/

3、测试在浏览器中输入http://192.168.18.6/svn/www

输入用户名和密码即可看见www仓库内容

4、同样可以使用TortoiseSVN连接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章