RHEL5+Subversion-1.6.0+Apache-2.2.11

RHEL5+Subversion-1.6.0+Apache-2.2.11

一、安裝前的準備工作
1.下載 subversion-1.6.0.tar.gz,subversion-deps-1.6.0.tar.gz httpd-2.2.11.tar.gz,apr-1.3.3.tar,gz,
apr-util-1.3.4.tar.gz,zlib-1.2.3.tar.gz.
2.rpm -qa|grep httpd apr subversion ,如果有的話,全部卸載.
 
二、開始安裝

1.安裝apr
cd apr
./configure
make
make install
 
2.安裝apr-util
cd apr-util
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
make
make install
 
3.安裝zlib
cd zlib
./configure
make
make install
 
4.安裝httpd
tar zxvf httpd-2.2.11.tar.gz
cd httpd-2.2.11
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --enable-so --enable-dav --enable-maintainer-mode --enable-rewrite
make
make install
 
5.解壓subversion
tar zxvf subversion-1.6.0.tar.gz
tar zxvf subversion-deps-1.6.0.tar.gz (這個解壓後會放到前面一個解壓的目錄裏的)

安裝serf
cd subversion-1.6.0/serf
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/
make
make install
 
安裝 neon
cd subversion-1.6.0/neon
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/
make
make install
 
安裝 sqlite
cd subversion-1.6.0/sqlite-amalgamation
./configure --prefix=/usr/local/sqlite3
make
make install
 
6.安裝subversion
cd subversion-1.6.0
./configure --prefix=/usr/local/svn --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-sqlite=/usr/local/sqlite3 --with-ssl --with-zlib=/usr/lib --enable-maintainer-mode
make
make install

注意:configure時會警告要DBD的支持,可以忽略,但我們還是把它裝上
 
7.安裝db-4.7.25.tar.gz
tar -zxvf db-4.7.25.tar.gz
cd db-4.7.25/dist
./configure
make
make install
vi /etc/ld.so.conf 加入下面一行
/usr/local/BerkeleyDB.4.7/lib #保存
ldconfig
cp /usr/local/BerkeleyDB.4.7/include/* /usr/include   
cp /usr/local/BerkeleyDB.4.7/lib/* /usr/lib
重新執行安裝  

三、配置
1.vi /usr/local/apache/conf/httpd.conf 查看是否有如下2行,有就對了
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

2.建立版本庫
mkdir /code (代碼的根目錄,根據自己情況)
/usr/local/svn/bin/svnadmin create /code/test (建一個test項目)
ls /code/test 裏面多了些文件就對了

3.配置Apache來支持SVN
vi /usr/local/apache/conf/httpd.conf
在末尾加上如下內容:
<Location /svn>
   DAV svn
   SVNParentPath /code #svn父目錄
   AuthzSVNAccessFile /code/authz.conf #權限配置文件
   AuthType Basic    #連接類型設置
   AuthName "Subversion" #連接框提示
   AuthUserFile /code/authfile  #用戶配置文件
   Require valid-user  #採用何種認證
</Location>
保存退出
 
4.啓動 apache 
./usr/local/apache2/bin/apachectl start 
打開IE,輸入:http://IP/svn/test  http://localhost/svn/test
會彈出一個輸用戶和密碼的框就對了
 
5.創建用戶配置文件
htpasswd -c /code/authfile user1
回車輸入密碼 (-c是第一次要創建文件)
htpasswd /code/authfile user2
回車輸入密碼
  .
  .等
 
6.創建權限配置文件
vi /code/authz.conf
[test:/]
user1 = rw
user2 = r
保存退出
注:
 [test:/] //這表示,倉庫test的根目錄下的訪問權限
    user1 = rw //test倉庫user1用戶具有讀和寫權限
    user2 = r //test倉庫user2用戶具有讀權限
    [test2:/] //test2倉庫根目錄下的訪問權限
    user1 = r //user1用戶在test2倉庫根目錄下只有讀權限
    user2 = //user2用戶在 test2倉庫根目錄下無任何權限
   [/] //這個表示在所有倉庫的根目錄下
   * = r //這個表示對所有的用戶都具有讀權限
   #[groups] //這個表示羣組設置
   #svn1-developers = user1, user2 //這個表示某羣組裏的成員
   #svn2-developers = user1
   #[svn1:/]
   #@svn1-developers = rw //如果在前面加上@符號,則表示這是個羣組權限設置
 
7.重啓Apache
./usr/local/apache2/bin/apachectl restart 
打開IE,輸入:http://IP/svn/test  http://localhost/svn/test
會彈出一個輸用戶和密碼的框
輸入你的添加的用戶和密碼就ok了
8.創建svn自啓動
   需要在/etc/profile文件內容的最後添加以下幾行語句:
       PATH=$PATH:/usr/local/svn/bin
       export PATH
       svnserve -d
   其中:/usr/local/svn/bin是svn的安裝路徑。
   前兩句的目的是爲了實現svn的命令在任何目錄上都可以使用。
   另外一個讓linux啓動是自動啓動svn服務的辦法是在/etc/rc.local文件裏添加下面的語句:
        usr/local/svn/bin/svnserve -d
    其中:/usr/local/svn/bin是svn的安裝路徑。
    兩種方法你可以任選其中一個都行。
9.創建apache自啓動
   有兩種方法可以讓Apache在系統啓動時自動啓動。

  1. 在/etc/rc.d/rc.local中增加啓動apache的命令,例如:/usr/local/httpd/bin/apachectl start

  2. 將apache註冊爲系統服務

      首先將apachectl命令拷貝至/etc/rc.d/init.d目錄下,改名爲httpd

      使用編輯器打開httpd文件,並在第一行#!/bin/sh下增加兩行文字如下

         # chkconfig: 35 70 30
         # description: Apache

      接着註冊該服務

      chkconfig –-add httpd

       一切OK了,啓動服務

      service httpd start

     其中所增加的第二行中三個數字第一個表示在運行級別3和5下啓動apache,第二、三是關於啓動和停止的優先級配置,無關緊要。

發佈了38 篇原創文章 · 獲贊 0 · 訪問量 1356
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章