SVN+Apache+IF.svnadmin支持https實現web管理SVN

閱讀目錄

  • 1. 介紹

  • 2. 軟件準備

  • 3. 建立SVN Server倉庫

  • 4.?配置PHP&.SVNadmin

  • 5. 啟動服務

1.介紹 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

公司最近想把Windows server平臺的SVN遷移到平臺;這邊經過測試成功,所以寫個隨筆記錄一下

今天寫的是CentOS7上搭建基于Apache,http訪問的SVN Server;和IF.svnadmin實現web后臺可視化管理SVN

?

iF.SVNAdmin

iF.SVNAdmin應用程序是您的Subversion授權文件的基于Web的GUI。它基于PHP 5.3,需要安裝一個Web服務器(Apache)。該應用程序不需要數據庫后端或任何類似的,它完全基于Subversion授權和用戶認證文件。(+包含用戶和組的LDAP支持)

2. 軟件準備 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

安裝相關軟件包

<span style="font-size: 14px"><span style="color: #000000">安裝過程如下:</span><span style="color: #800080">1</span><span style="color: #000000">.安裝apache    [root@localhost ~]# yum install httpd </span>-<span style="color: #000000">y</span><span style="color: #800080">2</span><span style="color: #000000">.安裝svn服務器(其中,mod_dav_svn是apache服務器訪問svn的一個模塊)    [root@localhost ~]# yum install mod_dav_svn subversion </span>-<span style="color: #000000">y<br/><br/></span>3.安裝完成后可以通過如下命令查看是否安裝成功</span>
<span style="font-size: 14px">[root@localhost ~]# httpd -version</span><br/><br/><span style="font-size: 14px">[root@localhost ~]# svnserve --version</span>

<span style="font-size: 14px">[root@localhost ~]# ls /etc/httpd/<a href="http://www.php.cn/code/8212.html" target="_blank">module</a>s/ | grep svn</span><br/><br/><span style="font-size: 14px">mod_authz_svn.so </span>
mod_dav_svn.so
<span style="font-size: 14px"><span style="color: #800080">3</span><span style="color: #000000">.在apache下配置svn <br/><br/></span></span>
[root@localhost ~]# vim /etc/httpd/conf.d/subversion.conf

<span style="font-size: 14px">LoadModule dav_svn_module modules/mod_dav_svn.so  LoadModule authz_svn_module modules/mod_authz_svn.so  <location>  DAV svn  SVNParentPath /var/www/svn ? #svn的根目錄<br>SSL<a href="http://www.php.cn/wiki/136.html" target="_blank">Require</a>SSL ? ? ? ? ? ? ? ?#SSL訪問權限  AuthType Basic ? ? ? ? ? ? ? #Basic認證方式  AuthName "Authorization SVN" ? #認證時顯示的信息  AuthUser<a href="http://www.php.cn/wiki/1313.html" target="_blank">File</a> /var/www/svn/passwd ? ? ?#用戶文件&amp;密碼  AuthzSVNAccessFile /var/www/svn/authz ?#訪問權限控制文件  Require valid-user ? ? ? ? ? ?#要求真實用戶,不能匿名  </location></span>

?

3. 建立SVN Server倉庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

?

通過如下命令建立svn倉庫

其中/var/www/svn是準備放倉庫的目錄,這個目錄可以放置多個代碼倉庫

[root@localhost ~]# mkdir /var/www/svn    [root@localhost ~]# svnadmin create /var/www/svn/sungeek  [root@localhost ~]# ls /var/www/svn/sungeek             --->  conf  db  format  hooks  locks  README.txt  [root@localhost ~]# chown -R apache.apache /var/www/svn    創建用戶文件passwd和權限控制文件authz  [root@localhost ~]# touch /var/www/svn/passwd     [root@localhost ~]# touch /var/www/svn/authz

?

?

4. 配置安裝PHP&IF.SVNadmin ? ? ? ? ? ? ? ? ? ??

由于iF.SVNAdmin使用php寫的,因此我們需要安裝php

[root@localhost ~]# yum install php -y    安裝配置if.svnadmin    [root@localhost ~]# wget http://sourceforge.net/projects/ifsvnadmin/files/svnadmin-1.6.2.zip/download[root@localhost ~]# cd /usr/src/[root@localhost src]# unzip iF.SVNAdmin-stable-1.6.2[root@localhost iF.SVNAdmin-stable-1.6.2]# cp -r iF.SVNAdmin-stable-1.6.2/ /var/www/html/svnadmin  [root@localhost ~]# cd /var/www/html  [root@localhost html]# chown -R apache.apache svnadmin  [root@localhost html]# cd /var/www/html/svnadmin  [root@localhost html]# chmod -R 777 data

?

5.啟動服務 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

如果開啟了防火墻, 需要開啟httpd訪問權限

[root@localhost ~]# firewall-cmd --permanent --add-service=http  [root@localhost ~]# firewall-cmd --permanent --add-service=https  [root@localhost ~]# firewall-cmd --reload 

?

通過查看文件/usr/lib/systemd/system/svnserve.service, 了解到svnserver的是/etc/sysconfig/svnserve
修改/etc/sysconfig/svnserve

[root@localhost ~]# vim /etc/sysconfig/svnserve  OPTIONS="-r /var/svn"     ======> OPTIONS="-r /var/www/svn" 

通過如下命令來啟用服務

[root@localhost ~]# systemctl start httpd.service

如下命令使其開機自啟動

[root@localhost ~]# systemctl enable httpd.service

重啟Apache

[root@localhost ~]# systemctl restart httpd.service

啟動webserver服務后,瀏覽器地址輸入http://ip/svnadmin出現配置界面,輸入下圖中配置信息,輸入每個配置信息可以點擊旁邊的Test測試是否輸入正確,最后保存配置

SVN+Apache+IF.svnadmin支持https實現web管理SVN

SVN+Apache+IF.svnadmin支持https實現web管理SVN

保存后,會提示默認的賬戶為admin/admin。

登陸后我們可以在“Repositories”下“add”,添加項目目錄;

在”Users”下

在“Access-Paths”下關聯對應項目的用戶,并分配相關讀寫權限。

?

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享