svn+apache

来源:互联网 发布:java 空格 显示问号 编辑:程序博客网 时间:2024/06/06 01:44

◆将PHPnow-1.5.6.zip解压到D:\PHPnow-1.5.6,运行setup.cmd

apache 22

mysql 51

然后不断根据提示即可完成phpnow的安装

 

以上说明,非集成开发环境可以忽略

 

◆安装VisualSVN,不断下一步即可

 

◆安装TortoiseSVN,不断下一步即可

 

◆新建D:\svn\app目录,来到D:\svn\app目录中,用(资源管理器右键菜单)TortoiseSVN建立版本库

 

◆新建一个D:\users.auth.bat的文件,文件内容:

D:\PHPnow-1.5.6\Apache-22\bin\htpasswd.exe -cb users.auth admin 123456

以上标红路径代表,你们安装的Apache安装目录

 

(admin 123456 分别为用户名和密码,根据自己需要设置)

双击执行users.auth.bat,然后在复制D:\users.auth 文件到D:\svn\app\conf

 

◆在 D:\svn\app\conf目录下一共有4个文件:

authz

passwd

svnserve.conf

users.auth

 

特别注意:passwd文件和users.auth文件是完全不同内容的,虽然功能上很类似。

 

◆打开authz文件,然后ctrl+a,del,然后粘贴如下内容:

[app:/]

admin=rw

 

 

◆打开passwd文件,然后ctrl+a,del,然后粘贴如下内容:

[users]

admin=123456

 

 

◆打开svnserve.conf文件,然后将内容如下覆盖原来的部分:

 

[general]

### These options control access to therepository for unauthenticated

### and authenticated users.  Valid values are "write","read",

### and "none".  The sample settings below are the defaults.

 anon-access = none

 auth-access = write

### The password-db option controls thelocation of the password

### database file.  Unless you specify a path starting with a /,

### the file's location is relative to thedirectory containing

### this configuration file.

### If SASL is enabled (see below), thisfile will NOT be used.

### Uncomment the line below to use the defaultpassword file.

 password-db = passwd

### The authz-db option controls thelocation of the authorization

### rules for path-based accesscontrol.  Unless you specify a path

### starting with a /, the file's locationis relative to the the

### directory containing this file.  If you don't specify an

### authz-db, no path-based access controlis done.

### Uncomment the line below to use thedefault authorization file.

 authz-db = authz

### This option specifies theauthentication realm of the repository.

### If two repositories have the sameauthentication realm, they should

### have the same password database, andvice versa.  The default realm

### is repository's uuid.

 realm = My First Repository

 

 

 

◆来到D:\PHPnow-1.5.6\Apache-22\conf 目录,然后打开httpd.conf文件,然后ctrl+end来到文件最底部,然后粘贴如下内容:

LoadModule dav_module modules/mod_dav.so

LoadModule dav_fs_module modules/mod_dav_fs.so

 

LoadModule dav_svn_module "C:/ProgramFiles/Subversion/bin/mod_dav_svn.so"

LoadModule authz_svn_module"C:/Program Files/Subversion/bin/mod_authz_svn.so"

 

<Location /svn/app>

  DAVsvn

   SVNPath "D:\svn\app"

   AuthType Basic

   AuthName "Subversion repositories"

   AuthUserFile "D:\svn\app\conf\users.auth"

    AuthzSVNAccessFile  "D:\svn\app\conf\authz"

   Require valid-user

</Location>

 

 

 

 

然后更改这两句

User daemo

Group daemo

为:

User admin

Group admin

 

◆最后,打开浏览器,输入地址:  http://localhost/svn/app  回车后,会有询问用户名密码对话框,输入admin、123456,然后会页面内容出现:

 

app - Revision 0: /

 

那么代表成功配置完成。

 

 

-------------------------------------------------

补充用Apache代理重定向到IIS的httpd.conf配置内容:

NameVirtualHost 10.168.0.101

 

<VirtualHost 10.168.0.101>

   ServerName 10.168.0.101:80                 #指定本机的IP即可,名称其实可以随意

   ProxyPass /svn !                           #排除不代理重定向到的目录

   ProxyPass / http://10.168.0.101:81/        #代理重定向到的IIS服务器的地址(其实是同本机的IP,只是IIS要设置非80的端口)

   ProxyPassReverse / http://10.168.0.101:81/

</VirtualHost>

0 0