linux下subversion+apache安装

++++++++++++++++++++++++++++++++++++++++++++++
linux下subversion+apache安装
++++++++++++++++++++++++++++++++++++++++++++++
操作系统    : [CentOS6.0]
svn             : [subversion-1.6.17]
apache                 : [httpd-2.2.9]
++++++++++++++++++++++++++++++++++++++++++++++
准备安装软件(download)
 1> [apr-1.4.5]
        http://labs.renren.com/apache-mirror//apr/apr-1.4.5.tar.gz
 2> [apr-util-1.3.12]
        http://labs.renren.com/apache-mirror//apr/apr-util-1.3.12.tar.gz
 3> [openssl-1.0.0]
        http://www.openssl.org/source/openssl-1.0.0e.tar.gz
 4> [httpd-2.2.9]
        http://sunsite.bilkent.edu.tr/pub/apache/httpd/httpd-2.2.9.tar.gz
 5> [subversion-1.6.17]
        http://subversion.tigris.org/downloads/subversion-1.6.17.tar.gz
 6> [subversion-deps-1.6.17]
        http://subversion.tigris.org/downloads/subversion-deps-1.6.17.tar.gz
 ++++++++++++++++++++++++++++++++++++++++++++++
1>【安装apr】
tar -zxvf apr-1.4.5.tar.gz
cd apr-1.4.5
#不指定安装路径时,默认安装到/usr/local/apr下
./configure
make
make install
2>【安装apr-util】
tar -zxvf apr-util-1.3.12.tar.gz
cd apr-util-1.3.12
./configure --with-apr=/usr/local/apr
make
make install
3>【安装openssl】
tar -zxvf openssl-1.0.0e.tar.gz
cd openssl-1.0.0e
./config --prefix=/usr/local/openssl
make
make install
4>【安装apache】
tar -zxvf httpd-2.2.9.tar.gz
cd httpd-2.2.9
./configure --prefix=/usr/local/apache2/ --sysconfdir=/etc/httpd/ --with-included-apr --disable-userdir --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --enable-dav --enable-so --enable-maintainer-mode
make
make install
5>【安装subversion】
#下面这两个包会自动解压成一个包subversion-1.6.17
tar zxvf subversion-1.6.17.tar.gz
tar zxvf subversion-deps-1.6.17.tar.gz 
cd subversion-1.6.17
#上面己经安装了apr和apr-util,所以需要将subversion-1.6.17目录下的apr和apr-util删除
#说明:svn依赖的APR版本要正确,如果Apache为2.0.x,应该的APR版本就为0.9.x
#apache为2.2.x,对应的APR版本应为1.2.x。由于subveresion-deps包里的APR是0.9.x的
#因此编译svn时要删除从deps里解压出来的apr,apr-util,改而使用apache2.2里提供的
rm -rf apr
rm -rf apr-util
 ./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr --with-openssl=/usr/local/openssl
make
make install

#将svn命令链接到/usr/local/bin目录下(需要root权限)
ln –s /usr/local/subversion/bin/svn /usr/local/bin
ln –s /usr/local/subversion/bin/svnadmin /usr/local/bin
6>【创建版本库】
mkdir -p /etc/svn/repos
#运行创建版本库的命令,指定数据存储为 FSFS
#如果要指定为 Berkeley DB,则将 fsfs 替换为 bdb 
svnadmin create --fs-type fsfs /etc/svn/repos
#查看生成的版本库结构
ls -l /etc/svn/repos
#创建项目临时目录,建议目录结构如下
mkdir -p /etc/svn/tmp/project_exam/trunk
mkdir -p /etc/svn/tmp/project_exam/branches
mkdir -p /etc/svn/tmp/project_exam/tags
#导入source, -m是注释
svn import -m "initial import" /etc/svn/tmp/ file:///etc/svn/repos/
#检查是否导入成功 
svn list --verbose file:///etc/svn/repos/

7>【给仓库授权】

chown -R apache.apache /etc/svn/repos
chmod 770 /etc/svn/repos
chmod -R g+w /etc/svn/repos
#建立本地访问控制文件
/usr/local/apache2/bin/htpasswd -c /etc/svn/repos/conf/passwd test1
#然后输入密码即可, 默认是MD5加密的
#追加用户
/usr/local/apache2/bin/htpasswd  /etc/svn/repos/conf/passwd  test2
#配置访问权限
vi /etc/svn/repos/conf/authz
#添加
admin = test1,test2
[/]
@admin = rw
[/]
*=r
[project_exam:/]
admin = rw

8>【配置apache】

vi /etc/httpd/httpd.conf
#如果你看到如下两句,说明安装是成功的
LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so

#修改版本库的权限
#查找User daemon和Group daemon改为
User apache
Group apache
#添加
<Location /svn>
    DAV svn
    #此处配置你的版本库父目录
    SVNParentPath /etc/svn
    #连接类型设置,基本验证
    AuthType Basic
    #此处字符串内容修改为提示对话框标题
    AuthName "Hello welcome to here"
    #访问版本库用户的文件,用apache的htpasswd命令生成
    AuthUserFile /etc/svn/repos/conf/passwd
    #此处修改为访问版本库权限的文件
    AuthzSVNAccessFile /etc/svn/repos/conf/authz 
    #告诉apache在authfile中的所有用户者可以访问
    Require valid-user
    #SSLRequireSSL
</Location>
#保存退出
#重启apache
service httpd restart

#在浏览中输入http://127.0.0.1/svn/repos,查看是否能正常访问
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值