閱讀目錄
今天寫的是CentOS7上搭建基於Apache,http訪問的SVN Server;和IF.svnadmin實現web後台可視化管理SVN
iF.SVNAdminiF.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 /svn> 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 #用户文件&密码 AuthzSVNAccessFile /var/www/svn/authz #访问权限控制文件 Require valid-user #要求真实用户,不能匿名 </Location></span>
3. 建立SVN Server倉庫
勾選準備放倉庫的目錄,這個目錄可以放置多個程式碼倉庫
[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
透過查看檔案/usr/lib/systemd/system/svnserve.service, 了解到svnserver的
是/etc/sysconfig/svnserve
修改/etc/sysconfig/svnserve
[root@localhost ~]# firewall-cmd --permanent --add-service=http [root@localhost ~]# firewall-cmd --permanent --add-service=https [root@localhost ~]# firewall-cmd --reload
[root@localhost ~]# vim /etc/sysconfig/svnserve OPTIONS="-r /var/svn" ======> OPTIONS="-r /var/www/svn"
如下指令使其開機自啟動
[root@localhost ~]# systemctl start httpd.service
重啟Apache
[root@localhost ~]# systemctl enable httpd.service
#啟動webserver服務後,瀏覽器位址輸入http://ip/svnadmin出現配置介面,輸入下圖中配置信息,輸入每個配置信息可以點擊旁邊的Test測試是否輸入正確,最後保存配置
儲存後,會提示預設的帳號為admin/admin。
登陸後我們可以在“Repositories”下“add”,新增專案目錄;新增使用者;
##在「Access-Paths」下關聯對應項目的用戶,並指派相關讀寫權限。以上是SVN+Apache+IF.svnadmin支援https實現web管理SVN的詳細內容。更多資訊請關注PHP中文網其他相關文章!