1. 程式人生 > >linux svn apache

linux svn apache

epo svn服務器 libs disable 修改配置文件 rep acc 信息 leg

借助apache運行的svn服務器

一:安裝Apache HTTP Server

1、安裝Apache HTTP Server

yum install httpd httpd-devel -y

2、修改配置文件

命令:vi /etc/httpd/conf/httpd.conf

找到ServerName配置文件,修改內容如下

ServerName localhost:80

3、增加防火墻使之外部可以訪問80端口

4、啟動Apache HTTP Server 服務

  service httpd start

5、測試訪問

  http://ip

二:安裝svn服務

1、停止Apache HTTP Server服務

  service httpd stop

2、安裝svn模塊

  yum install mod-dav-svn subversion

3、檢查svn模塊安裝結果

  ls /etc/httpd/modules | grep svn

  結果如下:

  mod_authz_svn.so
  mod_dav_svn.so

查看svn 版本信息: svn --version

4、為svn創建主目錄

  mkdir /svn

5、修改svn配置文件

vi /etc/httpd/conf.d/subversion.conf

#include /svn/httpd.conf
<Location /svn/> # 本地倉庫目錄位置 剛才創建的svn目錄
DAV svn #模型簡述
SVNListParentPath on #開啟上級目錄列表能力
SVNParentPath /svn #上級目錄列表根目錄 剛才創建的svn目錄
AuthType Basic #授權類型
AuthName "Subversion repositories" #擁有者名稱
AuthUserFile /svn/passwd.http #擁有者文件命名
AuthzSVNAccessFile /svn/authz #擁有者授權文件命名
Require valid-user
</Location>
RedirectMatch ^(/svn)$ $1/

6、創建密碼文件和授權文件

  touch /svn/passwd.http

  touch /svn/authz

三:安裝mysql數據庫(此數據庫專為SVN服務器提供數據存儲。與業務系統數據庫分類)

1、檢查當前系統中是否安裝了MySql

  rpm -qa | grep mysql

mysql-libs-5.1.71-1.el6.x86_64

2、安裝mysql

  yum install mysql-server mysql mysql-devel

3、啟動MySql服務

  service mysqld start

4、檢查MySql服務狀態

  service mysqld status

5、防火墻配置中增加3306端口訪問

6、設置MySQL數據庫root的用戶初始密碼

  mysqladmin -uroot password ‘root‘

7、為MySQL數據庫root用戶授權(默認智能本地訪問)

  GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘root‘ WITH GRANT OPTION;

  FLUSH PRIVILEGES;

8、查看授權信息

  select user,host from mysql.user;

  其中user為MySQL數據庫用戶名,host為可訪問的地址(%代表所有位置都可以訪問)

三:安裝svnadmin

1、簡介

  Svn Admin 是一個 Java 開發的管理 Svn 服務器的項目用戶的 web 應用。安裝好 Svn 服務
器端好,把 Svn Admin 部署好,就可以通過 web 瀏覽器管理 Svn 的項目,管理項目的用戶,
管理項目的權限。使得管理配置 Svn 簡便,再也不需要每次都到服務器手工修改配置文件

2、svnamdin的優點

  多數據庫: Svn 項目配置數據保存在數據庫,支持所有數據庫(默認 MySQL/Oracle/SQLServer)。
  多操作系統:支持 Window,Linux 等操作系統。
  權限控制:管理員可以隨意分配權限、項目管理員可以管理項目成員、成員只能查看和
  修改自己的密碼。
  支持多項目、多用戶、多用戶組 Group(默認帶有項目管理組項目開發組項目測試組)。
  安全:密碼加密保存。
  多協議:支持 svn 協議和 http 協議(2.0 開始支持 Apache 服務器單庫方式,從 3.0 開始支持 Apache 多庫方式)
  倉庫瀏覽(3.0.2 開始)
  多語言(3.0.2 開始)
3、安裝tomcat

  svnadmin 是使用 java 編寫的一個 WAR 應用,需要提供一個 Java WEB 中間件才能正常使用
4、上傳svnadmin到webapps中

5、修改svnadmin應用配置

  vi svnadmin/WEB-INF/jdbc.properties

  數據庫信息進行修改

6、創建database&導入sql腳本

  6.1、create database svnadmin default charset utf8 collate utf8_general_ci;

  6.2、use svnadmin

  6.3、執行腳本文件
    source /.../svnadmin/db/mysql5.sql

    source /../svnadmin/db/lang/en.sql

7、啟動httpd服務

8、啟動tomcat服務

四:訪問svnadmin

1、訪問

  http://ip:port/svnadmin

  系統默認首次進去的時候輸入管理員用戶名和密碼

2、創建版本庫

  創建的版本倉庫任意信息包含中文,必須要求, 數據庫的對應 database 字符集支持中
文,數據庫導入的 sql 文件必須有 en.sql 數據, tomcat 中的 server.xml 配置文件中必須增加
URIEncoding=”UTF-8”信息
  項目:庫名,自定義

  類型:http多庫 類型為http協議多庫

  路徑:服務器系統中的目錄信息,在系統中尋找路徑從根目錄"/"開始

  URL:http協議訪問SVN所在主機,後序地址為庫路勁(http://192.168.1.12/svn/svn_test)

3、用戶權限問題

  創建庫以後,點擊進入svn會提示認證失敗

  1、用戶組的manager裏面添加當前用戶

  2、/svn下面的目錄訪問的用戶是root用戶,svn系統訪問的用戶是apache(/etc/httpd/conf/httpd.conf中 User和Group)

    修改創建庫目錄訪問用戶:chown -R apache.apache svn_test

    每次增加svn庫時都需要修改目錄擁有者

  3、關閉seLinux(高級防火墻)

    修改前SELINUX=enforcing 修改後 SELINUX=disabled

4、重啟服務器

linux svn apache