Subversion1.4+apache2.2安裝
2008-01-09 08:41:46
標簽:
安裝apacheSubversion [
推送到技術(shù)圈]
版權(quán)聲明:原創(chuàng)作品,允許轉(zhuǎn)載,轉(zhuǎn)載時請務必以超鏈接形式標明文章
原始出處 、作者信息和本聲明。否則將追究法律責任。
http://feilin.blog.51cto.com/270948/58512先把容易出錯的地方點出來,如果安裝中碰到這樣的問題就可以修改了:
subversion 中的apr 以及apr-util 需要重新安裝,否則報lib 的錯誤。測試過網(wǎng)上修改srclib/apr/include/arch/unix/apr_private.h 注銷HAVE_GETADDRINFO 的做法,沒有成功。
apache 官方網(wǎng)站上有最新的apr 以及apr-util 的tar 包下載,最新版本是1.2.8 。選擇apche2.2.3 是因為apache 對1.2.8 這個版本不能支持,編譯報錯。
1. 下載apr-1.2.8.tar.gz 安裝:
tar xzvf apr-1.2.8.tar.gz
cd apr-1.2.8
./configure --prefix=/usr/local/apr-1.2.8
make
make install
2. 下載apr-util-1.2.8.tar.gz
tar xzvf apr-util-1.2.8.tar.gz
cd apr-util-1.2.8
./configure --prefix=/usr/local/apr-util-1.2.8 --with-apr=/usr/local/apr-1.2.8
make
make install
3. 安裝apache2.2.3
tar xzvf httpd-2.2.3.tar.gz
cd httpd-2.2.3
./configure \
--prefix=/home/apache2 \
--enable-rewite=shared \
--with-apr=/usr/local/apr-1.2.8/bin/apr-1-config \
--with-apr=/usr/local/apr-util-1.2.8/bin/apu-1-config \
--enable-dav=shared \
--enable-ssl=shared \
--enable-deflate=shared \
--enable-so \
--enable-maintainer-mode
make && make install
4. 安裝subversion1.4.0
tar xzvf subversion1.4.0.tar.gz
cd subversion1.4.0
./configure \
--prefix=/usr/local/subversion \
--with-apxs=/home/apache2/bin/apxs \
--with-apr=/usr/local/apr-1.2.8/bin/apr-1-config \
--with-apr-util=/usr/local/apr-util-1.2.8/bin/apu-1-config \
--with-ssl \
--enable-maintainer
make && make install
5. 察看/home/apache2/conf/httpd.conf 中是否包括如下模塊:
LoadModule deflate_module modules/mod_deflate.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule dav_module modules/mod_dav.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
6. 配置apache2.2.3
編輯/home/apache2/conf/httpd.conf
去掉Include conf/extra/httpd-ssl.conf 注釋
修改啟動用戶,組為apache
編輯/home/apache2/conf/extra/httpd-ssl.conf ,在最后</VirtualHost> 上添加
<Location /svn>
DAV svn
SVNParentPath /home/svn/repos
AuthType Basic
AuthName "SVN repository"
AuthzSVNAccessFile /etc/svn.access/authz
AuthUserFile /etc/svn.access/users
Require valid-user
SVNAutoversioning on
</Location>
7. 創(chuàng)建svn 目錄:
a) svn 的目錄mkdir -p /home/svn/repos
b) chown -R apache.apache /home/svn/
c) cd /home/apache2/htdocs/
d) ln -s /home/svn
8. 創(chuàng)建apache 用戶權(quán)限目錄
a) mkdir -p /etc/svn.access
b) cd /etc/svn.access
c) 編寫authz 如下內(nèi)容
[groups]
admin = admin, gaolimin
programmer = gaolimin
tester = test
[/]
@admin = rw
* = r
[test:/]
* = rw
9. 創(chuàng)建允許訪問的用戶
a) /home/apache2/bin/htpasswd -cm /etc/svn.access/users admin( 第一次)
b) /home/apache2/bin/htpasswd -m /etc/svn.access/users test( 以后)
c) chown -R apache.apache /etc/svn.access
10. 創(chuàng)建ssl 證書
a) openssl req -new > server.csr
b) openssl rsa -in privkey.pem -out server.key
c) openssl req -new -x509 -days 3650 -key server.key -out server.crt( 創(chuàng)建證書)
d) chmod 400 server.key server.crt
e) cp server.* /home/apache2/conf/
11. 創(chuàng)建項目版本
a) /usr/local/subversion/bin/svn create /home/svn/repos/admin
b) /usr/local/subversion/bin/svn create /home/svn/repos/test
12. 啟動apache+ssl
a) /home/apache2/bin/apache start( 需要輸入創(chuàng)建時候的密碼)
13. 測試svn
a) /usr/local/subversion svn checkout
https://ip/svn/testb) 測試成功了么?