SVN+apache安裝部署

來源:互聯網
上載者:User

標籤:svn

一,安裝軟體:

安裝apache

#yum  install httpd

安裝subversion

#yum install subversion*

安裝需要的模組mod_dav_svn

#yum -y install mod_dav_svn

二,建立版本庫並開始配置svn

 1,建立版本庫

  建立目錄結構

 #mkdir -p /var/svn              註:/var/svn 是SVN的庫存放目錄     /var/svn/repos是svn的庫根/

2.運行建立版本庫的命令,指定資料存放區為 FSFS,如果要指定為 Berkeley DB,則將 fsfs 替換為 bdb
# svnadmin create --fs-type fsfs/var/svn/repos

/var/svn/repos/conf/passwd  是使用者名稱密碼檔案,如用http方式訪問svn則此檔案無用

[users]

使用者名稱 = 密碼

/var/svn/repos/conf/svnserve.conf 是主設定檔

[general]anon-access = noneauth-access = writepassword-db = passwd     #使用者名稱密碼檔案位置authz-db = authz          #許可權檔案位置


3,可用可寫的svn賬戶提交庫內容,也可以建立目錄結構並匯入項目,

#svn import /etc/svn/tmp/ file:///var/svn/repos/--message "init"

啟動svn

#svnserve -d -r /var/svn/

註:關閉防火牆,進行測試


三,配置apache 實現apache+svn的結構

1,第一步要給svn的來源目錄修改許可權

#chown -R apache:apache /var/svn

apache 是http的啟動使用者 

2,查看apache支援的模組vim /etc/httpd/conf.d/subversion.conf

LoadModule dav_module modules/mod_dav.soLoadModule dav_svn_module modules/mod_dav_svn.so

並添加相應的apache配置

<Location /svn>      #這裡的/svn是網頁訪問時http://ip/svn(這裡)/庫名  DAV svn  SVNParentPath /var/svn    #父目錄 AuthTypeBasic AuthName "Auth" AuthUserFile/var/svn/passwordfile      #密碼檔案位置 AuthzSVNAccessFile /var/svn/repos/conf/authz   #許可權檔案 Requirevalid-user ErrorDocument404 default </Location>


3,授權訪問使用者:

給密碼檔案授權

#chown apache.apache passwordfile

Apache 提供了一個工具 htpasswd,用於產生使用者檔案,可以在 Apache 的安裝目錄下找到。具體使用方法如下:-c 建立新的檔案

#htpasswd –c /var/svn/passwordfile username

如果該檔案已存在則需要加-b,更新使用者密碼也用這個

#htpasswd –b /var/svn/passwordfile username passwd

 

#service httpd restart

 

用IE訪問svn 的url http://192.168.40.149/svn/repos/

出現使用者提示說明成功

3.目錄存取控制

#vim /var/svn/repos/conf/authz      策略檔案,詳細的許可權控制可以在這個策略檔案中指定

[/]  是庫根目錄    [/test]  為庫下檔案夾    @users  為users組


網頁自主更改密碼

先安裝PHP

#yum install php

把兩個指令碼放在apache首頁目錄/var/www/html/

#vim gaimi.html

把以下內容粘貼進去

<html><body><form action="http://59.151.109.141/passwd.php?"method="get"><p>確認使用者名稱: <inputtype="text" name="user" /><p><p>確認原密碼: <inputtype="text" name="oldpass" /><p><p>新密碼: <inputtype="test" name="passwd"/><p><input type="submit"value="修改" /></form></body></html>

然後

#vim passwd.php

把以下內容粘貼進去

<?php$username = $_GET["user"];$oldpass = $_GET["oldpass"];$passwd = $_GET["passwd"];$passwdfile="/var/svn/passwordfile";$command=‘"htpasswd" -b‘.$passwdfile." ".$username." ".$passwd;system($command, $result);if($result==0){   print("密碼已修改");}else{   print("修改失敗,請重試"); }?>

然後從網頁訪問修改密碼 http://ip/gaimi.html



本文出自 “sleepcat” 部落格,請務必保留此出處http://sw5720.blog.51cto.com/8812314/1575951

SVN+apache安裝部署

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.