在网上搜索类似的文章,也许不少,但都是转来转去之作,不需要说明的问题反复说了多次,而实际中遇到的问题却从来不提,本文为笔者实践笔记,希望对各位有帮助。
简介
WampServer架设
phpMyAdmin配置
MantisBT
邮件配置
常见问题
简介
我综合分析了多个Issue Track系统之后,认为MantisBT最适合我,为什么呢?首先,我要的功能它都有,我不要的功能它不多;其次是免费,开源,我甚至可以对其进行定制修改;再次就是平台比较方便,使用Apache+MySQL+PHP(简称AMP)即可,AMP可是久经考验的稳定平台了。关于更多Issue Track系统的比较详情,可以参考:
http://en.wikipedia.org/wiki/Issue_tracking_system
WampServer架设
第一步当然是架设AMP平台,公司的操作系统为Windows Server 2003(有点小落伍了),所以得下载Windows版的AMP来安装,幸运的是有人已经帮我们做好了整合,这个软件包就是WampServer,WampServer不光配备了Apache+MySQL+PHP,还配备了非常实用的管理工具——phpMyAdmin,实在太方便了!WampServer的官方网站是:
http://www.wampserver.com/
到那里你可以下载到WampServer的最新版,我下了两个版本,一个是旧一点的WampServer 2.0i,另一个是较新的WampServer 2.1e,安装包都不算很大,20M左右,比同动辄几百兆上G的重量级服务器软件来说,可谓袖珍,其中2.1e版的WampServer带的组件的版本分别是:
Apache : 2.2.17
MySQL : 5.5.8
PHP : 5.3.5
特别需要说明的一点是:并非版本越高越好,关键是合适,比如我的情况,在Windows Server 2003那台机器上,2.1e版本的MySQL就无法正常启动,我查看了下log,在网上搜索答案,未果,我尝试重装之后发觉还是不行,所以就退而求其次,安装了2.0i,总算正常了。
安装过程非常的傻瓜式,为了方便起见,安装时候指定在桌面上创建一个快捷方式是不错的选择。
WampServer默认是不启动的,即便它是一个服务器程序,不像国内那些流氓软件,后台运行不够,还要强制弹框……双击桌面上那个图标就可以启动WampServer,在托盘区出现一个图标,在WampServer 2.1版本中,这个图标为红色的时候表示WampServer没有成功被启动,为黄色的时候表示没有完全成功启动(比如MySQL服务启动不了之类的),为绿色的时候表示成功启动了所有服务。对WampServer的操作可以单击这个图标,通过弹出的菜单来进行选择。
启动服务之后输入这个地址来验证:
http://127.0.0.1/?phpinfo=1
如果一切正常,就能看到PHP的版本信息。也有可能不正常,原因是你的机器上已经安装了微软IIS等软件,把Web Service默认的80端口占用了,这个时候需要修改一下Apache的端口。打开Apache的配置文件,方法如图:
配置文件是个文本文件,我们要做的是把其中的“Listen 80”改为类似“Listen 8081”,我用的端口是8081,这个端口在我的机器上没有被占用。我们没有在端口前加上地址,这表示将监听所有地址上的8081端口,我们没必要指定监听的地址,通常这样设置就可以去了,保存这个文本文件之后重启Apache服务,这回就OK了。测试一下:
http://127.0.0.1:8081/?phpinfo=1
phpMyAdmin配置
接下去是phpMyAdmin,这个程序是WampServer带的,其实它就是个PHP程序,通过这个程序,我们能够很方便地对MySQL进行管理,比如添加用户,修改权限等。打开phpMyAdmin:
http://127.0.0.1:8081/phpmyadmin/
这时候你就可以用这个工具进行很多相关的设置了,也许你注意到页面下面有一段红字,上面写着:“您配置文件中的设置 (空密码的 root) 与 MySQL 默认管理员账户对应。您的 MySQL 服务器使用默认值运行当然没有问题,不过这样的话,被入侵的可能性会很大,我们强烈建议您应该立即给 'root' 用户设置一个密码来补上这个安全漏洞”。它是在提醒你给MySQL的管理员设个密码,否则不安全。下面我们就来修改这个密码。
在phpMyAdmin中点击“权限”标签,出现类似下图:
注意看其中的[email protected]和root@localhost,这两个目前都没有密码,我们都要修改一下,点右边“编辑权限”的小图标进入修改,我把[email protected]的密码改为“wamp.123”,root@localhost的密码改为“wamp.456”,当root@localhost的密码被修改之后,phpMyAdmin可能出现页面错误,告诉你数据库无法访问了,这是正常的,因为密码刚被你改了,所以你要修改一下phpMyAdmin的数据库访问密码,方法如下:
打开文件“D:/wamp/apps/phpmyadmin3.3.9/config.inc.php”,其中“D:/wamp”是我的WampServer的安装路径,最好用UltraEdit等工具来打开,因为文本文件的格式是Unix的格式,如果直接用记事本来打开的话换行会显示不正常。把“密码”改一下:
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'wamp.456';
$cfg['Servers'][$i]['AllowNoPassword'] = true;
保存这个文件,重新刷新phpMyAdmin,这回就OK了,phpMyAdmin是个很方便而实用的工具,更具体信息请参考:
http://www.phpmyadmin.net/home_page/index.php
如果你的实际情况跟我上面所描述的不一样,那么请尝试重启一下WampServer的所有服务,再试试看,另外就是清空一下IE浏览器的缓存,关闭并重启IE浏览器,再尝试看看,因为这些软件版本众多,加上操作系统各异,所以出现些特殊情况也不奇怪。
到此为止,WampServer的配置是完成了,接下去就是MantisBT的架设。
MantisBT
MantisBT中的BT就是Bug Tracker的意思,而Mantis,螳螂,是捕虫能手,看这个名字就知道这是一个主要用来跟踪软件bug的系统。MantisBT的官方网站是:
http://www.mantisbt.org/
我下载的版本是1.2.4,在选择版本的时候记得稍微看看Requirements,看看自己的PHP和MySQL是否符合它的要求。
我下载的是一个zip包,将它解压缩到我们的www目录去,我的是:
D:/wamp/www/mantisbt
然后在浏览器中输入:
http://localhost/mantisbt
就能看到MantisBT的安装画面,大致如图:
我让MantisBT使用MySQL的root用户,密码我填入的是前面设置的“wamp.456”,虽然更安全的办法是用phpMyAdmin给MySQL创建一个MantisBT专门的数据库用户,但作为一个内部使用的Issue Track系统,其实也不会有太大安全性问题的了。
点“Install/Upgrade Database”这个按钮,安装开始,其实就是在MySQL中创建相关的表和初始化一些数据的过程,在我的电脑上花了大约七八秒钟,然后就显示完成信息了。如果各个条目的右边都显示绿色的“GOOD”字样的话,那就恭喜你,你已经成功安装了MantisBT,如果有些条目显示的不是“GOOD”,那就要回头检查一下,多半是数据库权限不够的问题,比较省事的办法就是我上面的做法,直接给MantisBT使用root账号,就不会有权限的问题了。这时候你迫切地想看看结果,于是输入:
http://localhost/mantisbt
你会看到登录界面,登录界面下面有两行红字:
Warning: You should disable the default 'administrator' account or change its password.
Warning: Admin directory should be removed.
都是安全方面的warning,前一个说administrator这个管理员账号的密码得改,这个简单,administrator的默认密码是“root”,登录进去,在My Account这个标签下面修改就可以了,修改密码的时候还需要你提供真实可用的Email地址。
另外一个warning也不难解决,如它所说,删除“Admin”目录,我的是“D:/wamp/www/mantisbt/admin”这个目录。
邮件配置
这样MantisBT就差不多完成了,但!还有一个很重要的配置没做,要不然你试试看在登录的界面上尝试注册一个新用户,你发现成功不了,为什么?因为用户注册需要一个有效的邮箱地址来收确认信,但邮箱配置我们没做,所以确认信你是收不到的。好,下面来做这个配置。
首先得配置一下PHP环境,如图打开PHP的配置文件:
查找到[mail function]段,根据自己的实际情况进行修改。SMTP是SMTP服务器的地址,10.186.3.11这是我所用的邮件服务器,smtp_port是SMTP服务器的端口,默认是25,sendmail_from填写一个真实的发件人邮箱地址,我填写的是我的邮箱(这是内部域名)。
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = 10.186.3.11
; http://php.net/smtp-port
smtp_port = 25
; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = [email protected]
接下来就是MantisBT的邮件设置了,打开MantisBT的配置文件,我的是“D:/wamp/www/mantisbt/config_inc.php”。根据你的实际情况,修改一下这个文件的内容,下面是我的配置,供参考:
<?php
$g_hostname = 'localhost';
$g_db_type = 'mysql';
$g_database_name = 'bugtracker';
$g_db_username = 'root';
$g_db_password = 'wamp.456';
$g_smtp_host='10.186.3.11';
$g_smtp_username='guogangj';
$g_smtp_password='111111';
$g_phpMailer_method =2;
$g_return_path_email = '[email protected]';
?>
修改完之后保存文件,重新启动一下Apache,然后尝试注册一个新用户看看。如果还是收不到邮件,那多半是你的邮件服务器配置不正确,请回头仔细检查配置。
常见问题
至此,你的MantisBT已经完全配置好,下面是我遇到的两个较大的问题,可能你暂时没遇到,我还是在这里列一下:
1,MantisBT频繁失去响应的问题
失去响应就类似程序死循环,网页上刷新不出任何内容,仿佛一直在loading,这个也许是MantisBT的bug,有一种说法是把PHP的版本更新到5.5.3以上就不会出现这个问题,貌似是这样,但我有台机器的PHP的版本是5.5.0,而且不太好更新,经过大量搜索资料,这个问题终于解决,起码看起来是解决了,方法是这样:
打开“d:/wamp/www/mantisbt/core/authentication_api.php”文件,把349行的一个语句改一下,由:
$t_login_methods = Array(
MD5,
CRYPT,
PLAIN,
);
改为
$t_login_methods = Array(
MD5,
# CRYPT,
PLAIN,
);
也就是把CRYPT注释掉,然后重启Apache服务,在我的机器上就OK了。
2,总是显示“HTTP 403禁止访问”的问题
这通常出现在用另一台电脑访问MantisBT的时候,其实这跟Apache的设置有关,打开Apache的“httpd.conf”配置文件,打开方法前面提到过。在文件中查找“Deny from all”的文本行,将其注释掉或者删除掉,在我的文件里找到3处,保存文件,重启下Apache服务,这样就可以了。
文章到这里也就结束了,也许你还遇到一些我没提及到的问题,这很正常,毕竟服务器的配置是稍微有些烦琐的,多试几次看看。
MantisBT是个很简单易用的工具,具体的使用可以参考其官网上的说明,但即便不去看什么说明我估计也难不倒你,因为它确实很简单。:D