linux下svn服務器端+apache安裝文檔(轉)

linux下svn服務器端+apache安裝文檔(轉)
2010-05-12 9:17

 

1.下載subversion和apache的最新src包
2. 新建一個用戶:svnroot ,以下操作非特別說明皆爲root用戶操作
#groupadd svn
#useradd svnroot -g svn
#passwd svnroot
3. 編譯安裝httpd:
//解壓apache2安裝包
# tar xvzf httpd-2.2.3.tar.tar
//進入解壓後的目錄
# cd httpd-2.2.3
//配置apache安裝
# ./configure --enable-dav --enable-so --prefix=/usr/local/apache2/
# make
//安裝
# make install
//啓動apache服務
# /usr/local/apache2/bin/apachectl start
//打開瀏覽器http://localhost/如果有測試頁"It works!"出現則證明已經安裝成功。

4. 安裝Subversion
//解壓SubVersion安裝包
# tar xvzf Subversion-1.4.0.tar.gz
//進入解壓後的目錄
# cd Subversion-1.4.0
//配置subversion安裝
#./configure --with-apxs=/usr/local/apache2/bin/apxs --prefix=/usr/local/subversion --with-apr=/usr/local/apache2 --with-apr-util=/usr/local/apache2 --with-ssl --with-zlib --enable-maintainer-mode
# make
//安裝
# make install
//創建庫文件所在的目錄 (svnroot用戶進行下面的操作)
# mkdir /home/svnroot/repository
//創建倉庫"test"
# /usr/local/subversion/bin/svnadmin create /home/svnroot/repository/test
//查看svn是否安裝成功
# /usr/local/subversion/bin/svnadmin --version
//不讓其他人有該目錄的權限
# chmod 700 /home/svnroot/repository
(svnroot用戶操作結束)

5. 修改Apache配置文件
# vi /usr/local/apache2/conf/httpd.conf
   //找到下列語句,如果沒有則自行添加
   LoadModule dav_svn_module modules/mod_dav_svn.so
   LoadModule authz_svn_module modules/mod_authz_svn.so
//在後面添加
   <Location /svn>
   DAV svn
   SVNParentPath /home/svnroot/repository/ //svn父目錄
   AuthzSVNAccessFile /home/svnroot/repository/authz.conf //權限配置文件
   AuthType Basic //連接類型設置
   AuthName "Subversion.zoneyump" //連接框提示
   AuthUserFile /home/svnroot/repository/authfile //用戶配置文件
   Require valid-user //採用何種認證
   </Location>

//重啓apache
# /usr/local/apache2/bin/apachectl restart
//打開瀏覽器訪問http://localhost/svn/test/,如果有東西顯示就說明成功。

6. 權限管理
1)增加用戶
# htpasswd -c /home/svnroot/repository/authfile 用戶名
//第一次設置用戶時使用-c表示新建一個用戶文件。回車後輸入用戶密碼,完成對用戶的增加
# htpasswd /home/svnroot/repository/authfile 用戶名(加入新的用戶,就不用-c了)

2)權限分配
# vi /home/svnroot/repository/authz.conf
[groups]
admin=useradmin
devteamcs = useradmin,user1,user2//這裏定義了一個用戶組
[/]//對所有的項目,所有的用戶都有讀權限,admin用戶有讀寫權限
@admin = rw
* = r
[test:/]//對test項目,
@devteamcs = rw
// 在 /usr/local/apache2/conf/httpd.conf 文件中配置,找到文件中的這兩行:
User daemon
Group daemon
// 將daemon改爲svnroot,組也做相應更改,讓apache進程以svnroot的身份運行
//改完後是這個樣子
User svnroot
Group svn
//重啓apache
# /usr/local/apache2/bin/apachectl restart
訪問http://localhost/svn/test ,現在需要身份驗證,且通過驗證後應該可以看到信息
補充:在xp的環境下,如果你運行着卡巴斯基,可能會導致無法訪問svn,通常會報400 Bad Request錯誤
解決辦法是:進入卡巴斯基的設置-->網絡設置--->端口設置,然後從端口列表中去掉80端口即可
再次補充:eclipse有svn的插件,subclipse,安裝路徑爲:http://subclipse.tigris.org/update

其他相關:

svn中文站,包含所有源碼和文檔下載:http://www.subversion.org.cn/

 

轉自:http://guguaiying.vcmblog.com/archives/2007/571575.html


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