澳门新浦京娱乐场网站-www.146.net-新浦京娱乐场官网
做最好的网站

澳门新浦京娱乐场网站:Ubuntu下搭建基于Apache的

雷克斯是一款服务器协调治将养安顿管理工科具。有了雷克斯,你能够通过安排管理和软件铺排的全体流程,由集中式点心来治本全数服务器。

雷克斯是一款服务器和谐护医疗配备处理工科具。有了雷克斯,你能够因而布署管理和软件安顿的完整流程,由聚焦式点心来管理全体服务器。

本文参考了一下博客,特此多谢:

      后边讲述了什么在windows下行使SVN版本调整器,但广大时候是把服务器放在Linux服务器上以供我们共同选取的,多数高档高校、探讨人口也把本身的花色代码放在服务器上,而小编辈在浏览器中就能够查阅,好多开源项目都以这么展现,大家下载的洋洋源码都以那般,Ubuntu官方软件包下载目录就是那样,如下图

前言

简单,Rex就好比Make命令。有叁个聚焦式雷克斯file,你能够在里头定义职分。那几个职责通过SSH在中距离机器上进行。职务使用一般perl编写而成。

简易,雷克斯就好比Make命令。有多个聚集式雷克斯file,你能够在中间定义任务。这一个职责通过SSH在长途机器上举行。职务使用一般perl编写而成。

灰烬之灵     一米阳光做IT.测试

澳门新浦京娱乐场网站 1

或然未来好些个高等程序员都用github来做代码管理工科具,可是还应该有众多铺面思考到平价进行和人口收受手艺的标题,依然会选拔svn作为代码版本管理工具,上面介绍一下什么依照Apache搭建SVN版本库。

你能够从网址

您能够从网站

意况描述:ubuntu 13.04
 
1、先创建svn组和svn用户:
 
sudo addgroup svn
sudo useradd svn -g svn -m  //新添svn用户名,-g并创立它所在的组svn,-m同有的时候候成立svn用户所在的home目录
sudo passwd svn  //设置svn用户的密码 // hzsxsvn 我设置的用户svn的密码

 

设置svn相关模块

前言

前言

2、安装apache2和svn server

     作者是在虚拟机中设置的。首先要力保Ubuntu能上网,使用速度不错的更新源,在母校内部用ipv6的源,速度非常快。

Ubuntu下安装命令

在本文中,笔者将利用Subversion来管理全数义务。你也足以选取任何任何软件配置管理(SCM)系统,只要它支持类似Subversion的外部命令的一声令下。小编使用Ubuntu 12.04,但你也得以接纳任何发行版。

在本文中,作者将采取Subversion来管理全体职责。你也足以行使其余任何软件配置管理(SCM)系统,只要它帮助类似Subversion的外部命令的下令。作者动用Ubuntu 12.04,但您也可以应用别的发行版。

sudo apt-get install apache2
sudo apt-get install subversion
sudo apt-get install libapache2-svn

自家利用apt-get格局安装,当然也足以友善编写翻译安装,但总认为太困苦,而且十分多参数作者也不懂,所以偷偷懒吧。

sudo apt-get install subversion libapache2-svn 

本身不会在每贰个指令前面加上后缀“sudo”;要求的话,请使用“sudo”。

自己不会在每多少个限令前面加上后缀“sudo”;要求的话,请使用“sudo”。

3、创制svn版本库 这里库的名为 svn,项指标名叫project
 
sudo mkdir /home/svn/project
sudo svnadmin create /home/svn/project/repos
 
此刻得以在/home/svn/project/repos目录下
看样子svn版本库的全部文件夹以及配备文件,如:conf、db、format、hooks、locks、README.txt  

 

设置成功后截图

在本文中,作者将建设构造五个示范项目。一个种类名叫“website”,另贰个类小名字为“database”,因为在大商厦中,系统管理员和数据库管理员常常是分手设立的。那七个门类都将运用能够由中心操作团队来保管的“常见职分”(common tasks)。

在本文中,小编将建设构造四个示范项目。叁个品类名称为“website”,另多少个类型名称叫“database”,因为在大商号中,系统管理员和数据库管理员平日是分离设立的。那多个品种都将应用能够由大旨操作团队来保管的“常见职分”(common tasks)。

4、配置并导入项目  测试
 
sudo mkdir /home/svn/testprj
sudo mkdir /home/svn/testprj/branches
sudo mkdir /home/svn/testprj/tags
sudo mkdir /home/svn/testprj/trunk
 
导入项目到版本库:svn import /home/svn/testprj file:///home/svn/project/repos/testprj -m "initial import" 
//  /home/svn/testprj 表示要求引进的门类
//    file:///home/svn/project/repos/testprj 表示svn的版本库,此处是做早先化引进
 澳门新浦京娱乐场网站 2

以下在root用户权限下操作。使用sudo su进入root用户就能够。

澳门新浦京娱乐场网站 3

本身将采取八个服务器:

作者将采用七个服务器:

5、改换权限

(1) 安装Apache、SVN等。

配置svn版本库

•Subversion服务器,svn01

•Subversion服务器,svn01

sudo chown -R svn:svn /home/svn/project/repos
sudo chmod –R 777  /home/svn/project/*

apt-get install apache2 libapache2-mod-python libapache2-svn python-setuptools subversion python-subversion
Apache安装完结后,运转Apache2。

创建svn根目录

•数据库服务器,db01

•数据库服务器,db01

6、将svn配置到apache中经过http web方式访问
 
sudo  vi /etc/apache2/apache.conf,将如下文件粘帖到apache.conf尾部,如下:
 
 <Location /svn>
    DAV svn
    SVNPath /home/svn/project/repos
    AuthzSVNAccessFile /home/svn/project/repos/conf/authz
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile /home/svn/project/repos/conf/passwd
    Require valid-user
</Location>
 
 备注:此布署文件是报告apache关于svn的走访路线已经相关安顿文件,这里注意访问的跟目录。重启apache服务器,然后就足以由此进展长距离访问
 
重启apache服务器:/etc/init.d/apache2 restart
 
本来这里供给表达访问登陆用户,接下去将介绍增多svn用户

澳门新浦京娱乐场网站 4

mkdir -p /home/svn 

•Web服务器,web01

•Web服务器,web01

############################
## 这里报错了
############################
hzsx@hzsx-server:~$ sudo /etc/init.d/apache2 restart
Syntax error on line 268 of /etc/apache2/apache2.conf:
Invalid command 'AuthzSVNAccessFile', perhaps misspelled or defined by a module not included in the server configuration
Action 'configtest' failed.
The Apache error log may have more information.
   ...fail!
############################################ 

在客户机的浏览器中输入服务器的IP,如,应能看到如下分界面:

创设所要求的版本库

•工作站,wks01

•工作站,wks01

查一下后发掘是二个so文件没加,在/etc/apache2/mods-available/dav_svn.load最终增添一行:
LoadModule authz_svn_module /usr/lib/apache2/modules/mod_authz_svn.so,apache服务器成功重启。

澳门新浦京娱乐场网站 5

cd  /home/svn/ 

始建版本库

简单的讲,Re...

hzsx@hzsx-server:~$ sudo /etc/init.d/apache2 restart       
 * Restarting web server apache2                                                                            
 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
 ... waiting .apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
                                                                                                      [ OK ]

 

sudo svnadmin create 版本库的名字 

先是,你得设置任何所需的软件包。在Subversion服务器上实施这一个命令。

7、添加svn用户
 
sudo htpasswd -c /home/svn/project/repos/conf/passwd testuser1  //然后会提示您输入密码,当然首先次创立svn用户,须求经过参数-c,然后第二遍创造svn用户就无需,这里要小心。
sudo htpasswd /home/svn/project/repos/conf/passwd testuser2  //创立第一个svn用户
 
下一场就可以通过这一个用户访问了,并能够在其它pc上对svn进行checkout,命令行如下:
svn checkout --username testuser1 --password 123456
自然还足以透过svn客户端工具checkout更便于  

(2) 安装Mercurial。
apt-get install python-all-dev
apt-get install mercurial

修改版本库目录的权力

svn01# apt-get install libapache2-svn subversion apache2-mpm-prefork

8、用户权限调控
 
急需在apache的布署文件中加进如下配置,才具使得apache能够获取svn的权限配置,如下:
修改/etc/apache2/mods-available/dav_svn.load 继续增加此外两行,然后将apache服务重视启。

 

因为是透过apache访问svn,所以目录的属主均为www-data就可以

后天,编辑文件/etc/apache2/mods-enabled/dav_svn.conf,把下列代码粘贴到该文件中(更改现存的剧情)。

#LoadModule dav_module /usr/lib/apache2/modules/mod_dav.so
#LoadModule dav_fs_module /usr/lib/apache2/modules/mod_dav_fs.so
LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so
LoadModule authz_svn_module /usr/lib/apache2/modules/mod_authz_svn.so
实际上好像前两行 添不增添 无所谓

(3)建立SVN库。
mkdir /var/lib/svn
svnadmin create /var/lib/svn/repos
chown –福睿斯 njucslzh:njucslzh /var/lib/svn                //这里是用户和用户组
⑵ 向SVN库提交代码。
svn import /home/njucslzh/bowling/ -m “my program v1.0”
⑶ 配置Apache。
vim /etc/apache2/mods-available/dav_svn.conf
编写此文件,将以下内容所在行的申明符去掉:
<Location /svn>                                     

sudo  chown -大切诺基 www-data.www-data 版本库名字 

DAV svn

9、倘若不布署如下放权力限,局域网其余主机浏览器访问
会提示 You don't have permission to access /svn/project on this server.
svn的权能决定是经过目录结构来支配,调节权限在/home/svn/project/repos/conf/authz文件中,示例配置如下:
 
 文件最终边加多几句:
 [groups]
svn = testuser1
# add user testuser1 to group svn

     DAV svn
     SVNPath /var/lib/svn/limeng
     AuthType Basic
     AuthName “njcslzh上的Subversion Repository”               //必要用户密码时的唤醒消息
     AuthUserFile /etc/apache2/dav_svn.passwd
     Require valid-user
</Location>

配置Apache

SVNParentPath /var/lib/svn

[/]
# / svn root directory
@svn = rw

累加用户
htpasswd –c /etc/apache2/dav_svn.passwd njucslzh
输入并明确密码后,就增多了用户njucslzh。
重启Apache
/etc/init.d/apache2 reload                           //或restart
/etc/init.d/apache2 start/stop/restart

修改apache基于svn模块的布局文件

AuthType Basic

10、图形化管理 svnmanager
SVNManager is a PHP web based tool to administer a Apache Subversion repository server.
svnmanager.sourceforge.net  当前版本为1.10

 

sudo vim /etc/apache2/mods-available/dav_svn.conf

AuthName "Subversion Repository"

wget
tar -vxjf svnmanager-1.10.tar.bz2
sudo mv svnmanager-1.10 /var/www/svnmanager

打开http://172.16.166.210/svn,输入用户名和密码,可观望如下分界面

修改后安顿文件内容如下

AuthUserFile /etc/apache2/dav_svn.passwd

11、安装MYSQL root密码:roothzsx
sudo apt-get install mysql-server mysql-client

澳门新浦京娱乐场网站 6

# dav_svn.conf - Example Subversion/Apache configuration
#
# For details and further options see the Apache user manual and
# the Subversion book.
#
# NOTE: for a setup with multiple vhosts, you will want to do this
# configuration in /etc/apache2/sites-available/*, not here.

Require valid-user

12、创建SVNManager数据库
mysql -u root -proothzsx

 

# <Location URL> ... </Location>
# URL controls how the repository appears to the outside world.
# In this example clients access the repository as
# Note, a literal /svn should NOT exist in your document root.
<Location /svn>

后天,创立目录/var/lib/svn和全部所需的版本库。作者会在后头描述版本库的源委。

mysql> create database svnmanager;
mysql> grant all privileges on svnmanager.* to 'svnmanager'@'localhost' identified by 'roothzsx';
mysql> flush privileges;
mysql> exit

(4)SVN的检出、提交。
将SVN库检出到钦命目录:
svn checkout http://172.16.166.210/svn /home/njucslzh/code/bowling
对检出的文书做过修改后,提交到SVN库:
svn commit -m "v2.0"

  # Uncomment this to enable the repository
  DAV svn

svn01# mkdir /var/lib/svn

这里注意 mysql> 前面语句的尾声; 不可能轻易。

理当如此,越来越多的是在windows下检出更新提交等,如下

  # Set this to the path to your repository
 # SVNPath /home/svn
  # Alternatively, use SVNParentPath if you have multiple repositories under
  # under a single directory (/var/lib/svn/repo1, /var/lib/svn/repo2, ...).
  # You need either SVNPath and SVNParentPath, but not both.
  SVNListParentPath on
  SVNParentPath /home/svn

svn01# cd /var/lib/svn

13、安装PHP_5
sudo apt-get install php5 php5-mysql php5-sqlite php-pear

澳门新浦京娱乐场网站 7

  # Access control is done at 3 levels: (1) Apache authentication, via
  # any of several methods.  A "Basic Auth" section is commented out
  # below.  (2) Apache <Limit> and <LimitExcept>, also commented out
  # below.  (3) mod_authz_svn is a svn-specific authorization module
  # which offers fine-grained read/write access control for paths
  # within a repository.  (The first two layers are coarse-grained; you
  # can only enable/disable access to an entire repository.)  Note that
  # mod_authz_svn is noticeably slower than the other two layers, so if
  # you don't need the fine-grained control, don't configure it.

svn01 /var/lib/svn# svnadmin create common

14、安装Pear模块:VersionControl_SVN
pear install VersionControl_SVN-0.3.4 
最新的应该是
pear install VersionControl_SVN-0.5.1

澳门新浦京娱乐场网站 8

  # Basic Authentication is repository-wide.  It is not secure unless
  # you are using https.  See the 'htpasswd' command to create and
  # manage the password file - and the documentation for the
  # 'auth_basic' and 'authn_file' modules, which you will need for this
  # (enable them with 'a2enmod').
澳门新浦京娱乐场网站:Ubuntu下搭建基于Apache的SVN环境,如何使用Rex管理你的服务器。  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/apache2/dav_svn.passwd

svn01 /var/lib/svn# svnadmin create service

downloading VersionControl_SVN-0.5.1.tgz ...
Starting to download VersionControl_SVN-0.5.1.tgz (31,121 bytes)
.........done: 31,121 bytes
install ok: channel://pear.php.net/VersionControl_SVN-0.5.1

 

  # To enable authorization via mod_authz_svn
  AuthzSVNAccessFile /etc/apache2/dav_svn.authz

svn01 /var/lib/svn# svnadmin create database

澳门新浦京娱乐场网站:Ubuntu下搭建基于Apache的SVN环境,如何使用Rex管理你的服务器。15、配置SVNManager
sudo mkdir -p /home/svn/svnconfig
sudo chown -R svn:svn  /home/svn
sudo chmod -R g rws /home/svn

 

  # The following three lines allow anonymous read, but make
  # committers authenticate themselves.  It requires the 'authz_user'
  # module (enable it with 'a2enmod').
  #<LimitExcept GET PROPFIND OPTIONS REPORT>
    Require valid-user
  #</LimitExcept>

svn01 /var/lib/svn# svnadmin create website

16、修改SVNManager配置文件
 sudo cp /var/www/svnmanager/config.php.linux /var/www/svnmanager/config.php
 vi /var/www/svnmanager/config.php

     那样设置只好餍足基本的须求,还恐怕有众多布署和指令未有提,小编也不晓得,以往有空再看呀。。。

</Location>

svn01 /var/lib/svn# chown -R www-data:

对应修改config.php如下配置项:
$lang = "en_US.utf8";
$htpassword_cmd = "/usr/bin/htpasswd";
$svn_cmd = "/usr/bin/svn";
$svnadmin_cmd = "/usr/bin/svnadmin --config-dir /home/svn/svnconfig";

注意:

大家创制了版本库后,要求为apache创立验证机制。

$svn_config_dir  = "/home/svn/svnconfig";
$svn_repos_loc  =      "/home/svn/project/repos";
$svn_passwd_file =      "/home/svn/project/repos/conf/authz";
$svn_access_file =      "/home/svn/project/repos/conf/passwd";

  • <Location /svn>与</Location>成对出现
  • DAV svn开启DAV模块援助
  • SVN帕特h与SVNParentPath二选其一,无法相同的时间出现,提出使用SVNParentPath,那样能够在SVN的根目录下创建多个svn版本库
  • 开启BASIC认证
  • 多读一下英文注释,非常粗略的

svn01# htpasswd -c /etc/apache2/dav_svn.passwd your-user-name

$smtp_server = "smtp.163.com";
$dsn  = "mysqli://root:roothzsx@localhost/svnmanager";

澳门新浦京娱乐场网站 9

明天,能够重复开动 apache了。

$admin_name  = "admin";
$admin_temp_password = "admin";

svn01# service apache2 restart

17、SVNManager配置达成,重启服务:

恭喜你!你的Subversion服务器今后备选安妥了。无妨直接奔着你的工作站,检出版本库。

sudo service apache2 restart
sudo service mysql restart

简单的说,Re...

18、实行一遍访问:  会提醒创设SVNManager数据表,刷新页面,现身登入页面。
svn-ip 是本身布署机器的IP地址。须要注意的是,这里运用admin admin登入。
可是这么些密码是一遍性的,只可以管理其余用户。所以要立刻增添二个组织者用户。

澳门新浦京娱乐场网站 10

19、退出admin,当使用刚刚创制的总指挥帐户再登入的时候。菜单就不平等了。

澳门新浦京娱乐场网站 11

20、然则此时,即使操作Create a new Repository,实际上在服务器上是不曾调换的。
编辑Change User Privileges of a Repository,会报错。

澳门新浦京娱乐场网站 12

此间根本是SVNManager未有权限,我们要给SVNManager分配权限。
sudo chown -逍客 www-data:svn /home/svn/project  再操作Create a new Repository就正常了。

 

 

本文由澳门新浦京娱乐场网站发布于服务器,转载请注明出处:澳门新浦京娱乐场网站:Ubuntu下搭建基于Apache的