windows server 2003下安装svnmanager并解决中文问题

最近几天刚刚安装好 svnmanager 并解决中文问题,现在和大家分享一下心得.
安装文档中参考了一些其他网友的发表的安装手册.

0.Windows server 2003 下安装基于apache的svn
apache_2.2.4-win32-x86-no_ssl.msi
svn-win32-1.4.4.zip
具体安装方法请参考论坛中其他帖子

1.安装php
php-5.2.5-Win32.zip 解压缩后就可以使用

2.开始配置http.conf及php.ini
1). 打开目录:"你的apache的安装目录"\conf\extra
新建一个名为:httpd-php5.conf 的文本文件,用记事本打开,添加以下内容
LoadModule php5_module "你php的安装目录\php5apache2_2.dll"

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

DirectoryIndex index.php

PHPIniDir "你php的安装目录"
然后用记事本打开:"你的apache的安装目录"\conf\httpd.conf,在文件末尾添加一行:
Include conf/extra/httpd-php5.conf
2)修改php.ini-dist为php.ini并配置,打开php.ini后.设置好extension_dir的目录后.去掉";",调用你需要的dll即可,
因为我们前面在apache设置的时候.选择PHPIniDir的目录就在我们php的安装目录.所以无需将php.ini复制到windows目录下.
还有就是提示.如果你要调用mcrypt,mhash,mysql的话..记得把php目录下的.libmcrypt.dll,mhash.dll,libmysql.dll 复制到 windows目录的system32目录下
这里需要mysql,所以复制 libmysql.dll 到c:\windows\system32目录,为下面的安装mysql做准备.

2安装mysql,我用的是 mysql-5.0.18-win32的安装包,
setup安装完以后,配置mysql,注意配置过程中字符集选择 GBK
命令行下进入mysql的安装目录,
输入命令mysql –u root –p
输入密码进入数据库
然后使用命令create database svnmanager 创建一个svn的数据库。
修改 php.ini 文件 去掉如下几行的注释:

extension = php_mbstring.dll

extension = php_mysql.dll

extension = php_gb2.dll

extension = php_mysqli.dll

extension = php_pdo.dll

extension = php_pdo_mysql.dll

修改 extension_dir= “D:\php-5.2.5-Win32\ext”

修改 default_charset = "gbk"

3.打开php5的文件夹,执行go-pear.bat这个文件,一直敲回车,完成后会生成一个PEAR_ENV.reg的注册表文件,双击导入注册表信息。
  安装VersionControl_SVN-0.3.1.tgz。把VersionControl_SVN-0.3.1.tgz复制到php5的目录,
  从命令行进入php5的目录 输入命令pear install -alldeps VersionControl_SVN-0.3.1.tgz
  安装VersionControl_SVN-0.3.1.tgz的时候需要另外XML_Parser-1.2.8.tgz这个包,如果你可以上网请执行上面的语句自动下载,如果不可以上网,可以先复制XML_Parser-1.2.8.tgz这个包到php5的目录 先用pear install -alldeps XML_Parser-1.2.8.tgz 安装xml后再用上面的命令来安装VersionControl_SVN-0.3.1.tgz.

修改 php.ini 文件

; Windows: "\path1;\path2"
include_path = ".;D:\php-5.2.5-Win32\PEAR"

安装完成后,用pear list命令查看安装是否成功.
   
4.安装svnmanager
  把svnmanager-1.03.zip解压到apache的缺省发布目录,一般是htdocs下面,改目录名为svnmanager,这里如果我改为其他名字使用起来就用问题,大家可以试试,是否可以改为其他名字.
  复制config.php.win并重命名为config.php.
  修改config.php文件.
$htpassword_cmd     = "c:\\Progra~1\\Apache~1\\Apache2.2\\bin\\htpasswd"; //htpasswd命令的完整路径
$svn_cmd            = "D:\\svn-win32-1.4.4\\bin\\snv"; //svn命令的完整路径
$svnadmin_cmd       = "D:\\svn-win32-1.4.4\\bin\\snv\\svnadmin"; //svnadmin命令的完整路径
$svn_repos_loc                         =         "E:\\SVNDATA\\";          //svn目录

$svn_passwd_file                 =         "E:\\SVNDATA\\apache_authz";  //passwd文件
$svn_access_file                 =         "E:\\SVNDATA\\svn_access_file"; //auth文件

$smtp_server                         =         "smtp.mailserver.net";

$dsn = "mysql://root:mysql~localhost@localhost/svnmanager";         //配制数据库包括用户名、密码、数据库地址和名称
这些请对照你的http.conf文件的svn配制进行填写.


5.解决中文乱码问题
修改 svnmanager\global\header.tpl  将页面的字符集设置为 gbk 或者 gb2312
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />

因为这里使用的是 mysql 数据库,因此修改
svnmanager\prado-2.0.3\framework\Data\adodb\drivers\adodb-mysql.inc.php
在 function _connect 倒数第三行前加入 mysql_query("set names 'gbk'");
设定操作mysql的字符集为GBK

                        mysql_query("set names 'gbk'");               
                  if ($this->_connectionID === false) return false;
                if ($argDatabasename) return $this->SelectDB($argDatabasename);
                return true;       
        }

重起apache,安装完成,仔细观察下apache log目录下的error.log文件,看看有什么错误没有.
如果没有错误,打开浏览器,输入http://localhost/svnmanager就可以登陆了。
第一次登陆需要使用一个默认的临时用户admin 密码 admin,登录后要创建一个管理员帐号,当你logout后,临时帐号将被禁用。

Svnmanager使用很简单,分为三大项目,用户管理,组管理和库管理,使用很简单,但是在使用的时候会把你以前的拥护和权限清空(就是passwd和auth文件),所有这里要重新建立用户 ,组和权限,然后在库管理里导入你本地的已经有的库就ok了

此外我还做了个 svnmanager 的汉化包,时间仓促,可能会有错误,欢迎大家下载使用并修正.

你可能感兴趣的:(windows)