mantis安装与配置–详细success版

Posted on Posted in 经验分享

推荐Mantis一键安装包,下载即用,免配置,集成了apache、php、mysql、ssl、zend、mantis等全套绿色软件

尝试着研究了下mantis。发现安装和配置还是比较负责的,期间会遇到很多麻烦的配置问题,

      比如邮件发送,乱码,图标支持,项目路径存取等等,网上没有详细的整理的资料。

        所以为了大伙能够迅速使用mantis,少走弯路,特整理了一下安装和配置文档。希望大家能够喜欢。这可是辛苦整理了几天的哦,呵呵!!!!

Mantis环境配置单

步骤一:安装Apache HTTP Server 2.2.4

      apache_2.2.4-win32-x86-no_ssl.msi。安装时domain和server都填了localhost,端口选择8080(如果不考虑IIS就用80)。
启动服务,输入http://localhost:8080/,出现It works!表示Apache正常运行。

步骤二:安装PHP 5.2.5

      php-5.2.5-Win32.zip,解压到任意目录(我解压到d:\php-5.2.5\)。

步骤三:配置Apache使支持PHP

编辑\Apache2.2\conf\httpd.conf文件,在末尾添加两行:
    LoadModule php5_module “d:/php-5.2.5/php5apache2_2.dll”
    AddType application/x-httpd-php .php
如果Apache的版本为2.0那么应当使用php5apache2.dll,另外注意Apache的配置文件使用/而非\。然后可以写一个简单的php测试页面放到\Apache2.2\htdocs。内容如下:
    <html><body><h1><?php echo “It works!”; ?></h1></body></html>
出现It works!表示Apache可以解析PHP。

步骤四安装MySQL v5.1.46

安装过后紧接就是配置,为了避免以后的麻烦请选择Detailed Configuration。在接下来的向导中务必记得两点:
    1、选择Best Support For Multilingualism,这样MySQL的默认字符集设置为UTF8,能够支持中文存储。否则以后使用Mantis创建帐户、创建项目等等只要输入有中文,入库就报错。
    2、设置root帐户的密码,因为Mantis建立数据库时似乎不支持空密码的root帐户。
而其余的仍可使用默认的。

步骤五配置PHP使支持MySQL

在PHP安装目录,拷贝php.ini-dist或php.ini-recommended并改名为php.ini。
    1、找到下面两行:
    ; Windows: “\path1;\path2”
    ;include_path = “.;c:\php\includes”
去掉include_path前面的分号,改为include_path = “.;d:\php-5.2.5\PEAR”。
2、找到下面两行:
    ; Directory in which the loadable extensions (modules) reside.
    extension_dir = “./”
改为extension_dir = “d:\php-5.2.5\ext”,该目录包含有php_mysql.dll

3、找到extension=php_mysql.dll这行,去掉前面的分号。
    4、拷贝D:\php-5.2.5\libmysql.dll到C:\Windows\System32(能否不拷贝?望知情者告知)。
    5、编辑\Apache2.2\conf\httpd.conf文件,在末尾加上一行:
    PHPIniDir “d:/php-5.2.5”
使用Apache解析PHP时必须这样指定php.ini文件的位置,进而使PHP加载MySQL的扩展模块。
以上缺少任何一步就会收到错误:Call to undefined function mysql_connect()。

步骤六:安装Mantis 1.1.1

  InstantMantis-1.1.1.zip

解压到任意目录(我解压到d:\InstantMantis-1.1.1\)。

1、映射虚拟路径,编辑\Apache2.2\conf\httpd.conf文件,在末尾添加:
    Alias /mantis “d:/instantmantis-1.1.1/root/mantis/”
    <Directory “d:/instantmantis-1.1.1/root/mantis/”>
    Options Indexes
    AllowOverride None
    Order allow,deny
    Allow from all
    </Directory>
2、输入http://localhost:8080/mantis/admin/install.php,填写参数,应该都看得懂吧,然后点击按钮建立数据库。需要注意的是Hostname一栏,默认值为localhost:3360,修改为MySQL安装时默认端口为3306
    3、更改数据库连接,编辑d:/instantmantis-1.1.1/root/mantis/config_inc.php,修改以下变量的值,如:
    $g_hostname = ‘localhost:3306’;
    $g_db_type = ‘mysql’;
    $g_database_name = ‘mantis’;
    $g_db_username = ‘root’;
    $g_db_password = ‘密码’;
    4、输入http://localhost:8080/mantis,用内置的帐号administrator(密码root)登录。局域网内其它机器访问时记得开放8080端口(如果有防火墙的话)

配置邮件发送

1)         修改mantis中的config_defaults_inc.php配置邮箱发送功能

#############################

         # Mantis Email Settings

         #############################

         # — email variables ————-

$g_administrator_email          = ‘jinchun1223@126.com’;

         $g_webmaster_email             = ‘jinchun1223@126.com’;

         # the sender email, part of ‘From: ‘ header in emails

$g_from_email                       = ‘jinchun1223@126.com’;

         # the sender name, part of ‘From: ‘ header in emails

$g_from_name                       = ‘Mantis Bug Tracker’;

         # the return address for bounced mail

$g_return_path_email   = ‘jinchun1223@126.com’;

         # allow email notification

         #  note that if this is disabled, sign-up and password reset messages will

         #  not be sent.

$g_enable_email_notification = ON;

2)         修改mantis中的config_inc.php  修改配置文件使其支持中文

<?php $g_hostname=’localhost:3306′;$g_db_type=’mysql’;$g_database_name=’mantis’;$g_db_username=’root’;$g_db_password=’root’;

$g_default_language=’chinese_simplified_utf8′;支持中文显示和数据库插入查询等

$g_window_title=’Mantis Bug’;         

$g_page_title= ‘Mantis Bug’;   

$g_use_jpgraph=ON; 支持报表图形化显示

?>

mantis中如何显示统计报表

默认情况下,Mantis的图形报表是关闭的,需要安装JPGraph模块。
1).请注意JPGraph 1.x 版本是针对php4,2.x 是针对php5的,请下载对应版本。
2). 将下载包解压到一个目录下,我解压到mantis下的jpgraph目录

3). 然后在config_inc.php中添加下面几行:
$g_use_jpgraph = ON;
$g_jpgraph_path = ‘./jpgraph/src/’;       //你也可以按照你的地址填写文件的绝对路径。
4). 在php.ini将“;extension=php_gd2.dll”前面的分号删除,这个模块是JPGraph在显示图表和进行汉字编码转换是所必须的。
(3) JPGraph的中文显示
1) 如果你的界面语言是用简体中文或者繁体中文,那么你会看到图形中的汉字都是乱码,这是因为Mantis对于JPGraph的编码设置不正确造成的。JPGraph会自动将汉字转换为UTF-8编码,但是需要在调用JPGraph的时候对标题等SetFont,Mantis没有做这个操作,因此汉字显示出来都是乱码。
解决方法是增加对图形设置字体的代码;
2) 打开$mantis\core\graph_api.php,查找:graph_get_font(),在其中添加一行
‘chinese_gbk’ => FF_SIMSUN,
3) 在config_inc.php文件中添加
$g_graph_font           = ‘chinese_gbk’;
4) 打开$JPGraph\src\jpg-config.inc.php
查找 DEFINE(‘CHINESE_TTF_FONT’,’bkai00mp.ttf’);
改为 DEFINE(‘CHINESE_TTF_FONT’,’simsun.ttc’);
jpg-config.inc.php也可以不改,如果生成的图形中的字体想由自己定义,可以这样改。
这个时候,如果你选择的语言是chinese_simplified,现在你的图形报表应该就可以显示中文了。
5) 但如果你选择语言跟我一样是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就不行了,

设置上传文件保存位置

主要配置项修改:

1、修改mantis\config_inc.php配置文件

$g_allow_file_upload  = ON;

$g_file_upload_method = DISK;

   如果没有,则手动添加这两行。

2、上传文件的大小受到 Mantis\config_inc.php 和 PHP\php.ini 的双重限制

   需要修改:/webapps/mantis/config_inc.php 中 $g_max_file_size = 10000000; # 这个单位是K,10000000K=10 MB

   PHP\php.ini 中upload_max_filesize = 10M 和 post_max_size = 10M

3、在mantis下新增upload文件夹

   在Mantis目录下新建目录如 upload ,再在mantis建立的项目中把文件上传路径设置为“upload”(通过Web方式)。这样上传的文件就会存放在upload目录中。

   但是设置是把服务器的绝对路径配进去了,结果我在其他机器上登录后,提交bug时,附件总是提交不上去,后来我把服务器上的upload目录设置为共享,并且赋予写的权限,然后再web页面上配置了然后再上传附件,发现就可以成功上传了。

在项目管理里面直接输入相对路径upload_boss就可以。

4、附件直接浏览功能:

     在提交一个issue的时候,有时候会有截图提交附件情况,希望能直接看到错误截图而不想自己下载后再看,目前Mantis只是针对bmp, png, gif, jpg格式的图片文件实现了在web页内直接浏览功能,其他各式的文件好像暂时不支持。

     实现方法,将config文件中的$g_preview_attachments_inline_max_size修改一下值