使用EasyPHP 安装mantis,以及Mantis初步初始化(方法二)(转)

Posted on Posted in 经验分享

1.安装环境:mantis-1.0.0rc4 + EasyPHP-2.0b1-setup.exe;

(1)这里建议使用EasyPHP,因为它集成了Apache,MySql和Php5。一个安装文件,安装也非常简单,用来搭建mantis很不错。如果对其中的Apache,Php作配置的话,只修改配置文件了,真的很easy。
最新版本是EasyPHP 2.0 beta1,
下载地址http://www.easyphp.org/telechargements.php3
EasyPHP is a complete software package allowing to use all the power and the flexibility that offers the dynamic language PHP and the effecient use of databases under Windows. Package includes an Apache server, a MySQL database, a fully PHP execution, as well as easy development tools for your web site or your applications.(PHP自官方网)
(2)Mantis is a free popular web-based bugtracking system (feature list). It is written in the PHP scripting language and works with MySQL, MS SQL, and PostgreSQL databases and a webserver. Mantis has been installed on Windows, Linux, Mac OS, OS/2, and others. Almost any web browser should be able to function as a client. It is released under the terms of the GNU General Public License (GPL)
mantis(螳螂)是一个免费且很受欢迎的bug跟踪管理系统。它是用php编写,并和MySQL, MS SQL, and PostgreSQL数据库协同使用,mantis已经被广泛的安装于Windows, Linux, Mac OS, OS/2等其它操作系统。几乎任何浏览器都可以作为客户端来使用。并且它是开源的哦。
mantis是最大特点是,便于使用,基于WEB,已经被翻译成68种语言,支持多个项目,为每一个项目设置不同的用户访问级别,跟踪缺陷变更历史,定制我的视图页面,提供全文搜索功能,内置报表生成功能(包括图形报表),通过Email报告缺陷,用户可以监视特殊的Bug,附件可以保存在 web服务器上或数据库中(还可以备份到FTP服务器上),自定义缺陷处理工作流,支持输出格包括csv、Microsoft Excel、 Microsoft Word,集成源代码控制(SVN与CVS ),集成wiki知识库与聊天工具(可选/可不选),支持多种数据库(MySQL、MSSQL、 PostgreSQ、Oracle、DB2),提供WebService(SOAP)接口,提供Wap访问。mantis的最新版本是1.1.0a3。
下载地址是http://www.mantisbt.org/download.php。 2.安装
(1)EasyPHP的安装很简单,不断的next就ok了
(2)mantis的安装,把mantis解压,我是解压到c:/mantis.也解压到easyphp的www目录下;
3.配置
(1)apache服务器打开C:\。。\apache下的conf目录下的httpd.conf文件,修改loadfile,LoadModule php5_module为 #PHP 5 

LoadFile “C:。。。/EasyPHP 2.0b1/php5/php5ts.dll”
LoadModule php5_module “C:。。。/EasyPHP 2.0b1/php5/php5apache2.dll” 并增加下面这句
AddType application/x-httpd-php .php

修改phpinidir的路径到你的php目录
#PHP.ini path
PHPIniDir “C:。。。/EasyPHP 2.0b1/php5”
并在文件的最后增加下面的语句

Alias /mantis “c:/mantis/” Options Indexes
AllowOverride None
Order allow,deny
Allow from all

设置字符
AddDefaultCharset UTF-8
修改duankou(因为我的80端口已经占用,默认为80端口)
#Listen 12.34.56.78:80

Listen 127.0.0.1:8088

(2)php配置
打开 C:。。。\EasyPHP 2.0b1\php5目录下的php.ini-dist文件。并修改它的类型为ini,即(php.ini)
修改include_path 为= “.;C:/EasyPHP 2.0b1/php5/jpgraph-1.21b/src/
去掉extension=php_mysql.dll和extension=php_gd2.dll前面的;号;
修改SMTP为你向要的邮件协议例如我的( SMTP.163.com)
修改

extension_dir = “c:../php5/ext”

(3)mysql
启动easyphp;
启动成功后会在状态栏右下角出现一个小方框,打开命令行,cd到mysql的bin目录,运行mysqld,启动服务,然后以root登录命令为: mysql -uroot -p;密码为空。再创建名为bugtracker数据库。然后哦后创建user为用户名 mantis密码为xxx,之后授权给mnantis,grant all privileges on bugtracker.* to ‘mantis’@’localhost’ identified by ‘xxx’;最后flush privileges; 在网上看到很多文章在创建bugtracker数据库之后,还要链接到mantis底下的sql下的的db_generate.sql文件,所以很多都很疑惑,发现在 mantis地下根本找不到这个文件夹。其实mantis在其新版本1.0以后就不需要用户自己创建数据表了,安装好mantis之后,第一次使用 mantis时它就会帮我们自动创建数据表了。是不是更方便了?嘿嘿!\q退出mysql。
(4)mantis隆重登场
打开mantis地下的config_inc.php.samp文件。一样的改名为config_inc.php。这个文件就是mantis的重量级文件了。我们的配置几乎都集中在这里了,里面的原貌是:
# — database variables ———
# set these values to match your setup

$g_hostname = “localhost”;
$g_db_username = “root”;
$g_db_password = “”;
$g_database_name = “bugtracker”;
$g_db_type = “mysql”;

# — email variables ————-

$g_administrator_email = ‘administrator@example.com‘;
$g_webmaster_email = ‘webmaster@example.com‘;

# the “From: ” field in emails

$g_from_email = ‘noreply@example.com‘;

# the return address for bounced mail

$g_return_path_email = ‘admin@example.com‘;

# — file upload settings ——–
# This is the master setting to disable *all* file uploading functionality
#
# The default value is ON but you must make sure file uploading is enabled
# in PHP as well. You may need to add “file_uploads = TRUE” to your php.ini.

$g_allow_file_upload = ON;

接下来几乎要将其改的面目全非了:
参照我的吧
# — database variables ———
# set these values to match your setup

$g_hostname = ‘localhost’;
$g_db_username = ‘mantis’;
$g_db_password = ‘mantis’;
$g_database_name = ‘bugtracker’;
$g_db_type = ‘mysql’;
$g_default_language =’chinese_simplified’;
$g_window_title = ‘mantis BUG管理系统’;
$g_page_title = ‘欢迎使用Mantis BUG 跟踪管理系统 趣得网 无需注册 免费发布’;
$g_show_queries_count = OFF;
# — email variables ————-
$g_use_phpMailer = ON; #使用phpMailer
$g_phpMailer_path = ‘C:/EasyPHP 2.0b1/php5/phpmailer’; //phpMailer路径
$g_phpMailer_method = 2; #使用SMTP服务
$g_smtp_host = ‘smtp.163.com’; #使用SMTP服务
$g_smtp_username = ‘fanxin1029’;
$g_smtp_password = ‘XXXXXX’;
$g_administrator_email = ‘fanxin1029@163.com‘;
$g_webmaster_email = ‘fanxin1029@163.com‘;
$g_from_email = ‘fanxin1029@163.com‘;
$g_return_path_email = ‘fanxin1029@163.com‘;
# — file upload settings ——–
$g_allow_file_upload = ON; //使用上传文件功能
$g_file_upload_method = DISK;
$g_max_file_size = 100000000; # 100 MB #设置文件空间
# — jpgraph settings ——–
$g_use_jpgraph = ON; 使用jpgraph
$g_jpgraph_path = ‘C:/EasyPHP 2.0b1/php5/jpgraph-1.21b/src/’; 指定jpgraph的路径
$g_graph_font = ‘chinese_gbk’; 设置jpgraph图形字体
# — time settings ——–
$g_short_date_format = ‘Y-m-d’;
$g_normal_date_format = ‘Y-m-d H:i’;
$g_complete_date_format = ‘Y-m-d H:i’;

插播广告:
(1)设置好文件上传后,在mantis目录下新建upload文件,要在以管理员登录在”管理”-“项目管理”-“创建项目”下“上传文件存放路径 ”栏中指定你的upload文件路径。刚试下发现可以上传照片的哦
(2)
如果要使用图形报表,就要下载jpgraph目前最新版本是jpgraph-1.21b.tar.gz。可以在http: //www.aditus.nu/jpgraph/jpdownload.php下载最新版的JPGraph,请注意JPGraph 1.x 版本是针对php4,2.x 是针对php5的,请下载对应版本。下载后解压,easyphp或者mantis目录下都可以,我放在我C:\EasyPHP 2.0b1\php5下。然后在php.ini“;extension=php_gd2.dll”前面的分号删除,这个模块是JPGraph在显示图表和进行汉字编码转换是所必须的。1) 如果你的界面语言是用简体中文或者繁体中文,那么你会看到图形中的汉字都是乱码,这是因为Mantis对于JPGraph的编码设置不正确造成的。 JPGraph会自动将汉字转换为UTF-8编码,但是需要在调用JPGraph的时候对标题等SetFont,Mantis没有做这个操作,因此汉字显示出来都是乱码。解决方法是增加对图形设置字体的代码;
1) 打开$mantis\core\graph_api.php,查找:graph_get_font(),在其中添加一行

‘chinese_gbk’ => FF_SIMSUN,

2) 在config_inc.php文件中添加 

$g_graph_font = ‘chinese_gbk’;

3) 打开$JPGraph\src\jpg-config.inc.php
查找 DEFINE(‘CHINESE_TTF_FONT’,’bkai00mp.ttf’);
改为 DEFINE(‘CHINESE_TTF_FONT’,’simsun.ttc’);
jpg-config.inc.php也可以不改,如果生成的图形中的字体想由自己定义,可以这样改。
这个时候,如果你选择的语言是chinese_simplified,现在你的图形报表应该就可以显示中文了。
4) 但如果你选择语言跟我一样是chinese_simplified_utf8,则发现报表显示还是乱码。
原来JPGraph中处理的时候比较bt,只要看到字体设置是FF_SIMSUN,就认为字符串编码是GB2312,输出的时候都要转成UTF8,
单实际上已经是UTF8了,根本不用转。
直接修改代码:
打开JPGraph下的jpgraph.php文件,搜索其中:
elseif( $aFF === FF_SIMSUN ) {
// Do Chinese conversion
if( $this->g2312 == null ) {
include_once ‘jpgraph_gb2312.php’ ;
$this->g2312 = new GB2312toUTF8();
}
return $this->g2312->gb2utf8($aTxt);
}
改为:

elseif( $aFF === FF_SIMSUN ) {
// Do Chinese conversion
/*
if( $this->g2312 == null ) {
include_once ‘jpgraph_gb2312.php’ ;
$this->g2312 = new GB2312toUTF8();
}
return $this->g2312->gb2utf8($aTxt);
*/
return $aTxt;
}

就是把转换编码的代码注释掉,最好不要直接删掉了,不然以后想改回来就麻烦了。这样改实际是有些问题,如果mantis中有部分用户的语言选择为chinese_simplified,另一部分选择为chinese_simplified_utf8就不行了,总会有部分人报表出现乱码。所以一个小组一定要统一阿:-) 目前图形报表中文显示应该没有问题了。
(3)使用邮件可以下载 phpmailer-1.73 ,下载地址为 http://sourceforge.net/project/showfiles.php?group_id=26031。我也安装在easyphp的php目录下,邮件的设置大概是最让人头疼的的了,,我也是调了N次,反反复复,记住要修改$ g_return_path_email = ‘fanxin1029@163.com‘;为有效地址!我在设置邮件是碰到了和这为老兄一样的问题 have installed mantis and done the installation check. Everything seems to be ok. I click the send email button to check my config. Mantis tells me that the email was sent successfully but I get nothing. Can someone help? 就是测试邮件发送成功,但是就是收不到邮件!
Here are my settings:
# select the method to mail by:
# 0 – mail()
# 1 – sendmail
# 2 – SMTP

$g_phpMailer_method = 1;

# This option allows you to use a remote SMTP host. Must use the phpMailer script
# Name of smtp host, needed for phpMailer, taken from php.ini

$g_smtp_host = ‘localhost’;

phpMailer_method = 1, uses the internal mail function in PHP to send the message. I believe that it waits until the message is sent before returning success or failure.
phpMailer_method = 2, uses the sendmail program to send the message. It opens a socket and transferrs the message locally. It does not wait until the message is sent before returning success or failure. Thus the mail logs are important.
phpMailer_method = 3, uses the code in phpMailer to send the message. It waits until the message is sent before returning success or failure. It works with remote SMTP servers.
那时候我设$g_phpMailer_method = 1,周大哥(我们老板)提醒才发现自己范了很菜的错误!
至此,如果没有意外你就可以登录mantia了;打开ie输入http://localhost:8088/mantis就可以看到登录界面了,,用户名为 administrator,密码是root,进入后可以改密码。语言你登陆后可以选择成中文简体!选择My Account,然后选择Preferences,找到Language,选择下拉列表中chinese_simplified,点击Updata Prefs之后重新登陆就ok了。还有要啰唆下我遇到的问题
1.提示Fantal error: Call to undefined function mysql_connect() in… 主要是因为php.ini文件中extension=php_mysql.dll前的分号没有去掉,然后再配置环境变量C:\EasyPHP 2.0b1\php5
2.可能会提示叫你将BGK改为iso-8859-1的什么提示(不好意思没记住);可以找到mantis的lang下找strings_chinese_simplified.txt,,将其修改
# Charset

$s_charset = ‘GB2312’;

好了,,基本结束了,大家有什么商讨的地方尽管来找我嘛,我就在趣得(中国)啊。
再说说mantis 的使用流程
报告-审核-修改-测试-关闭
如何使用呢???
有问题发生之后,现有审核人员审核,提出修改的建议,再指派给修改人员,修改人员完成修改后只派给测试人员测试,测试完毕后如果还有问题,问题状态为反馈,完成度为重新打开。
问题从出现,被报告,到经过分析,加以解决,有一个生命期。一个问题跟踪系统,就是用来跟踪每一个问题的生命期,可以让每个关心这些问题的人方便的检索每个问题的状态。问题跟踪系统还纪录了和问题相关的所有信息,包括问题的描述,围绕问题的相关讨论,测试用例,以及解决方法。
首先是报告问题。报告问题需要给出足够的信息,让开发者能够明白你的问题。报告里应该包括你的使用环境,包括使用的什么操作系统,有问题的软件是什么版本,重现问题的详细步骤:
一个问题刚报到跟踪系统中时,这时候需要有开发或者测试人员来确认这个问题。
确认的过程就是通过报告者提供的重现方式来复现这个问题,如果复现问题过程中遇到困难,需要在问题跟踪系统上和报告者交流,获得更准确的信息。
确认这个问题可能得到这样几个常见的结果。
1。这个问题确实存在,而且没有人报告过,那么就可以把这个问题的状态转换成已确认(New),接受这个报告。
2。这个问题存在,但是已经有人报告过,可以把这个问题标志成和某个已经存在的问题重复(duplicate)
3。属于用户的使用的问题,不是需要跟踪的问题,可以标志成非法问题,并关闭。
4。问题已经不存在或者无法重现,标志成无法重现,并关闭。
5。问题报告人提供的信息不够,仍然处于未确认状态,和报告人联系,以提供更多信息,继续确认。
如果问题被确认是新问题了,就可以指派给相关的人来处理。当然,如果你觉得你可以处理这个问题,也可以直接指派给自己。被指派处理这个问题的人可以在问题处理系统上提交自己的解决方案,让关注这个问题的人都可以看到,并可以提出意见,讨论这个方案。所有这些过程都在问题跟踪系统中进行,哪怕有人从中间加入问题的讨论也可以了解讨论的过程,避免重复的讨论或者犯犯过的错误。如果指派的人认为这个问题是重复问题或者不是问题,也可以把它标注成上面提到过的几个状态。如果问题最终得到了解决,就可以把问题标注成已解决(fixed)状态。最后相关的人来确认问题是否真的解决,如果没有,就需要将这个问题重新打开,如果确认已经解决,就可以关闭这个问题了