大家都知道,Mantis是一个轻量级的缺陷跟踪系统。作为一个免费的开源软件,我想这是很多小的团队首选的对象。在这里我为什么要介绍Mantis,而不去介绍Bugzilla呢?第一、Mantis相对Bugzilla有更好的操作界面。第二、安装和使用都相对简单一点。而对于一般的项目, Mantis作缺陷跟踪,已经绰绰有余。好了,言归正传,下面就把我在Windows下安装Mantis 0.19的一些心得,拿出来和大家分享。
1.安装前的准备
从http://www.mysql.com/downloads/index.html下载mysql,我使用的是mysql 4.0.2。
从http://www.php.net/downloads.php下载PHP for Windows,我使用的是最新的PHP 5,在下载PHP的同时,还要下载相应版本的zip package,也在这个网站上。
从http://www.mantisbt.org/download.php下载Mantis,我使用的是0.19版本(目前是最新的)。
从http://phpmailer.sourceforge.net下载phpmailer,我使用的是phpmailer 1.72,phpmailer是支持邮件发送的模块,支持SMTP、SENDMAIL等方式。
从网上下载Apache,我使用的是Apache 2.0.5,基于IIS的安装方法,网上已经有一篇很全面的文章。
2.安装步骤
工具已经准备完毕,下面就开始进入主题吧!:)
a)Mantis解压
将下载的Mantis压缩包,解压到c:\mantis。
b)Mysql的安装
Mysql安装比较简单,按照默认方式安装就行了。安装完毕后要进行建Mantis库的操作。假设安装到c:\mysql目录。
点开始->运行->输入CMD按回车,进入DOS命令提示行模式。
CD c:\mysql\bin
c:\mysql\bin>mysqld
//启动mysql的服务进程
再开一个DOS提示行窗口,转到c:\mantis\sql目录
CD c:\mantis\sql
c:\mantis\sql>c:\mysql\bin\mysql -uroot //连接到mysql数据库
mysql>UPDATE user SET password=PASSWORD('<new_root_password>') WHERE user='root';
mysql>FLUSH PRIVILEGES;
上面的操作是修改root用户的密码,'<new_root_password>'是你设置的密码。
mysql>create database mantis;
//创建Mantis库
mysql>connect mantis;
//连接到Mantis库
mysql>source db_generate.sql;
//Mantis初始化建表
上面是建立Mantis数据库,建立Mantis运行时所需要的表。
mysql>GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE, DROP, REFERENCES, LOCK TABLES, CREATE TEMPORARY TABLES ON mantis.* TO mantis@localhost IDENTIFIED BY '<mantis_password>';
mysql>FLUSH PRIVILEGES;
上面是建立mantis用户,<mantis_password>为mantis用户的密码。
mysql>exit;
//退出
c)PHP5和Apache的安装
PHP5和Apache的安装,可以参考http://blog.csdn.net/thb28/archive/2004/07/29/55620.aspx,在这里我就不再重复描述了。
d)修改Mantis和Apache的配置文件(这部分转载并进行部分修改)
Mantis的设置是这样保存的:在config_defaults_inc.php中保存这Mantis的默认设置,用户自己的设置信息保存在 config_inc.php中,如果某个选项在config_inc.php中有设置,则系统使用config_inc.php中的设置,否则使用 config_defaults_inc.php的系统默认设置;config_inc.php.sample则是Mantis给出的一个用户设置文件例子。
所以我们需要修改config_inc.php文件中的设置,设置很简单,各个参数的意义可以参见 config_defaults_inc.php,这里对每个参数都有详细的解释,虽然是E文,不过应该都能看懂;Sample中给出的一些设置是一定需要修改的,比如MySQL数据库的连接参数,管理员的邮箱的;其他的要根据你的实际情况进行修改。
下面是我的一些自定义参数。
修改以下几行为
$g_db_username = "mantis";
$g_db_password = "你在建立用户时指定的密码";
$g_database_name = "mantis";
增加以下几行
$g_path = "http://www.yourdomain.com/mantis/";
$g_icon_path = $g_path."images/";
$g_absolute_path = "/解压缩的目录/mantis/";
#我在这里设置值为"/c:/mantis/";
$g_use_iis = OFF; # 不使用IIS
$g_show_version = OFF; # 不在页面下部显示 Mantis的版本号
$g_default_language
='chinese_simplified';# 默认语言为简体中文
$g_show_project_menu_bar = ON;# 显示项目选择栏
$g_show_queries_count
= OFF; # 在页脚不显示执行的查询次数
$g_default_new_account_access_level = DEVELOPER; # 默认用户级别
$g_use_jpgraph = ON; # 使用图形报表
$g_window_title = 'Mantis Bug 跟踪管理系统'; # 浏览器标题
$g_page_title = 'Mantis Bug 跟踪管理系统'; # 页面标题栏
$g_enable_email_notification = ON; # 开通邮件通知
$g_smtp_host = 'smtp.mail.net'; # SMTP 服务器
$g_smtp_username = 'mailuser'; # 邮箱登录用户名
$g_smtp_password = 'mailpwd'; # 邮箱登录密码
$g_use_phpMailer = ON; # 使用 PHPMailer 发送邮件
$g_phpMailer_path = 'C:/PHP/includes/PHPMailer/'; # PHPMailer 的存放路径
$g_phpMailer_method = 2;
#PHPMailer以SMTP方式发送Email,设置成1将以sendmail方式发送
$g_file_upload_ftp_server = 'ftp.yourftp.com'; # 上传文件 FTP
$g_file_upload_ftp_user = 'ftpuser'; # FTP 登录用户名
$g_file_upload_ftp_pass = 'ftppwd'; # FTP 登录密码
$g_short_date_format = 'Y-m-d'; # 短日期格式,Y 大写表示 4 位年
$g_normal_date_format ='Y-m-d H:i'; # 普通日期格式
$g_complete_date_format ='Y-m-d H:i:s'; # 完整日期格式
修改Apache的配置文件,Apache的配置文件位于Apache安装目录的conf目录中,文件名为httpd.conf。
增加以下几行(供参考):
Alias /mantis/ "/解压缩目录/mantis/"
#我的设置是Alias /mantis/ "/c:/mantis/"
Options Indexes MultiViews Includes FollowSymLinks +ExecCGI
AllowOverride None
Order allow,deny
Allow from all
e)重新启动Apache服务
重新启动Apache服务后,不出意外的话,访问http://localhost/mantis/将出现Mantis的登录页面。
f)安装phpmailer
我在网上看到一些文章,通过修改Mantis的配置文件指向phpmailer(config_inc.php),但是我在安装过程中修改了$ g_phpMailer_method也不能正常发送邮件,我的处理方法是直接覆盖Mantis目录下的phpmail目录(将下载的phpmailer 覆盖上去)。Mantis自带的phpmailer在发送邮件的时候有点问题,对一些SMTP服务器支持不是很好,所以要下载新版的phpmailer。如果想在WINDOWS下通过SENDMAIL进行发送,可以到http://www.glob.com.au/sendmail/sendmail.zip下载Delphi开发的sendmail,还有原码。
3.结束语
安装Mantis过程并不难,主要是邮件发送的调试比较头痛。好了,Mantis的安装到此结束,如果在安装中还碰到什么问题,跟我联系吧,或许我能帮上一点小忙。最后提供一个bugzilla安装过程的一个链接http://glob.com.au/bugzilla/。