`
jerome_wang
  • 浏览: 147575 次
  • 性别: Icon_minigender_1
  • 来自: 云南
社区版块
存档分类
最新评论

强大的BugTracker工具——Mantis环境搭建系列四

阅读更多

原创 转 http://blog.csdn.net/wirror800/archive/2010/05/23/5618243.aspx

强大的BugTracker工具——Mantis环境搭建系列四(Mantis) 收藏

<script type="text/javascript"> document.body.oncopy = function () { if (window.clipboardData) { setTimeout(function () { var text = clipboardData.getData(&quot;text&quot;); if (text &amp;&amp; text.length &gt; 300) { text = text + &quot;\r\n\n本文来自CSDN博客,转载请标明出处:&quot; + location.href; clipboardData.setData(&quot;text&quot;, text); } }, 100); } } </script><script type="text/javascript"> function StorePage() { d = document; t = d.selection ? (d.selection.type != 'None' ? d.selection.createRange().text : '') : (d.getSelection ? d.getSelection() : ''); void (keyit = window.open('http://www.365key.com/storeit.aspx?t=' + escape(d.title) + '&amp;u=' + escape(d.location.href) + '&amp;c=' + escape(t), 'keyit', 'scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes')); keyit.focus(); }</script>

    早在去年年底的时候就准备写这篇文章了,CTO张也建议过我好几次,希望我能将这篇文章分享出来。然而,由于个人和工作的原因,直到今天才有时间坐在这里 来和大家分享,实在抱歉。

    这只是一篇入门级的运行环境搭建的介绍,主要涉及:Apache、PHP、MySql和Mantis.

    关于Mantis的具体使用方法,我将在后续的文章中,再跟大家一一介绍。

    ============================================================

    Mantis                                      

    =============================================================

 

下载地址: http://sourceforge.net/projects/mantisbt/files/mantis-stable/

(1) 上传,安装配置

将下载到的压缩包上传到服务器空间(默认是apache安装目录下的htdocs目录),解压,重命名 ( 这里为 mantisbt), 然 后访问类似下面的 url:http://localhost:8080/mantisbt/admin/install.php

       

 

配置你的数据库信息,一定要填写正确,后面的 admin 信 息可以留空。

点击做下脚的 continue 链接,进入到登录页面

这时候,页面上会提示您需要删除服务器端的 admin 目录 ( 该目录只会在安装时起作用 ) ,为了安全起见,我们 删除掉该目录(或重命名)。同时,页面上会提示我们需要使用默认用户名密码登录,然后自行修改该帐号,或删除。然后刷新一下页面,使用默认的用户名密码 administrator root 来登录。

(2) 配置邮箱、时区、语言及页面结构等信息,编辑 config_inc.php 文件。完整的配置信息在 config_defaults_inc.php 中, config_inc.php 示范文件在 config_inc.php.sample 中。通常不需要修改 config_defaults_inc.php 文件,只需要在 config_inc.php 文件中配置新的信息来覆盖 config_default_inc.php 中的默认配置项。

<?php

     $g_hostname                     = 'localhost';

     $g_db_type                      = 'mysql';

     $g_database_name                = 'mantisbt';

     $g_db_username                  = 'root';

     $g_db_password                  = 'wirror800';

    

     #[ 语言设置 ]

     $g_default_language  = 'chinese_simplified';

 

      #[email]

     $g_administrator_email           = 'wirror800@qq.com';

     $g_webmaster_email               = 'wirror800@qq.com';

     $g_from_email                       = 'wirror800@qq.com';

     $g_return_path_email             = 'wirror800@qq.com';

     $g_enable_email_notification    = ON;     #OFF ,表示不使用邮件系统,创建用户的初始密码将为空。

     $g_phpMailer_method             = 2;      # smtp 发送邮件

     $g_smtp_host                         = 'ssl://smtp.gmail.com:465';

   // php.ini 中,将 php_openssl extension 前面的分号去掉,

   //然后还需要下载最新的 class.phpmailer.php 文件覆盖原来的文件 .

     $g_smtp_username                 = 'wirror800@gmail.com' ;

     $g_smtp_password                 = 'wirror1234567890';

 

    #[timezone]

    putenv("TZ=Asia/Shanghai");      # putenv 函数不起作用,可在 php.ini 中修改 date.timezone = Asia/shanghai

 

    #[jpgraph 1.2 版本中, jpgragh 已以插件的形式被集成为 mantisGraph ,可在后台插件管理中安装该插件 ]

     #$g_use_jpgraph                       = ON;

    #$g_jpgraph_path                     = './jpgraph/src'. DIRECTORY_SEPARATOR;  

    #$g_graph_font                        = 'simsun';   # 需要修改 core\graph_api.php 文件,加入 'simsun' => FF_SIMSUN,

    #$g_graph_window_width            = 800;

     #$g_graph_bar_aspect              = 0.9;

    #$g_graph_summary_graphs_per_row  = 2;

    #$g_system_font_folder            = 'c:/WINDOWS/Fonts/';

    #$g_font_per_captcha               = 'simsun.ttf';

 

    #[relationship graph -- Graphviz]

    $g_relationship_graph_enable      = OFF;

    #$g_system_font_folder            = 'c:/WINDOWS/Fonts/';

    #$g_font_per_captcha                = 'simsun.ttf';

 

     #[login page]

     $g_allow_signup                       = OFF;

     $g_lost_password_feature         = OFF;

    

     #[page layout]

    

     #[wiki]

     $g_wiki_enable                        = OFF;

    

     $g_default_new_account_access_level = DEVELOPER; # 默 认用户级别

    

?>

(3) 配置中文图表 ( 如果是 linux 系统,有 些中文字体在系统中是不存在的,有两种方案可以解决。 I 如果是本地服务 器,可将需要的字体安装在本地系统字体目录下; II 如果是远程租用服务器,没有修改服 务器本地配置的权限的时候,可以将字体拷贝到具有访问权限的某个目录下,然后修改 jpgraph 的源码

<jpg-config.inc.php 需要修改一处

//DEFINE("TTF_DIR","/usr/X11R6/lib/X11/fonts/truetype/"); # 改成

DEFINE("TTF_DIR","$SystemRoot/fonts/"); #fonts 后面一定要带 "/"

> 中的字体目录。 )

下载 jpgraph 免费版: http://hem.bredband.net/jpgraph2/jpgraph-3.0.7.tar.bz2

1.1.8 之前的版本配置

1). 可以在 http://www.aditus.nu/jpgraph/jpdownload.php 下载最新版的 JPGraph ,请注意 JPGraph 1.x 版本是针对 php4 2.x 是针对 php5 的,请下载对应版本。

2). 将下载包解压到一个目录下,我解压到 mantis 下的 jpgraph 目录,定义为 $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.0 以后的版本已经能够很好的支持报表中文显示,但可能 PHP5 的问题,我这里还是乱码,这里列出参考别人的方法我所做的配置。

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 就不行了,

默认情况下只有管理员和经理才能看到报表,如果让所有人都能看 到报表需要将 config_defaults_inc.php $g_view_summary_threshold = MANAGER; 修改为 $g_view_summary_threshold = ANYBODY;

1.1.8 之后的版本安装配置

默认的系统使用自己绑定的 mantis graph, 我们也可以选择安装使用 jpgraph

1 、安装 JPGRAPH 及改 程序

(1)安装: JpGraph 3.0.7 ,从 http://www.aditus.nu/jpgraph/jpdownload.php 下载最新版本,记得看清对应的 PHP 版本。解压缩其中子目录 src mantis\library 目录下,改名为 jpgraph

(2)修改文件 mantis\library\jpgraph\jpgraph_ttf.inc.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

        return $aTxt;

        }

2 、后台设置:

1 )安装插件:管理 -- 》管理插件 -- 》安装 MantisGraph 插件

2 )修改程序:

  *文件 mantis\plugins\MantisGraph\pages\config.php (记得本文件改完后用 Ultraedit ASC-II UTF-8 的转换功能保存为 UTF-8 格式文件,与总体字符集保持一致) :

$t_current_font_selected = array(

        'simsun' => false,    // 增加这一行

        'arial' => false,

//--------------------------------------

        Sans-serif:<br />

        <label><input type="radio" name="font" value="simsun"<?php echo print_font_checked( 'simsun' )?>/> 宋体 </label><br /> // 增加这一行

        <label><input type="radio" name="font" value="arial"<?php echo print_font_checked( 'arial' )?>/>Arial</label><br />

//---------------------------------------------------------------------

   *文件 mantis\plugins\MantisGraph\pages\config_edit.php

if ( plugin_config_get( 'font' ) != $f_font ) {

        switch ( $f_font ) {

                 case 'simsun':    // 增加这一行

                case 'arial':

//----------------------------------------------------------------------

   *文件 mantis\plugins\MantisGraph\core\graph_api.php

                $t_font_map = array(

                        'simsun' => FF_SIMSUN,   // 增加这一行

                        'arial' => FF_ARIAL,

3 、设置并启用:

1 )管理 -- 》管理插件 -- 》点击“ MantisGraph 1.0 ”名字进入设置界面,

2 Graph library to use 选择“ Jpgraph ”, Font 选择“宋体”

3 )点击“更改配置”后再看看统计报表中内容,是否已如你所愿。

MantisGraph 插件的中文化文件,放在 mantis\plugins\MantisGraph\lang 目录下即可。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics