项目一直在使用mantis管理BUG,但是,版本过于陈旧:
使用的是: Apache 2.0.53 + PHP 4.3.10 + MySQL 4.0.23 +
Mantis 0.19.2
由于服务器数据需要升级到MySQL 5.0.67,而4.*l和5.*有一些不兼容,导致,无法将旧的
Mantis的Mysql4.*库导入到MySQL 5.*中,索性,全面升级Mantis,重新配置。
新的配置是: Apache 2.2.10 + PHP 5.2.6 + MySQL 5.0.67 + Mantis
1.1.4
配置总体手顺如下:【以下内容转载】
最近要搭建一个Bug跟踪管理系统,开源免费的Mantis自然首当其冲。要运行Mantis,有两种主流的环境配置:IIS+PHP+MySQL+Mantis和Apache+PHP+MySQL+Mantis,本文主要介绍后一种。
首先介绍如何在Apache上运行PHP:
1.安装Apache
首先下载Apache服务器的windows版本,网址为:http://httpd.apache.org/download.cgi,最新版本为Apache2.2,下载完后安装。
注意:检查80端口有没有被占用,本人安装时就由于打开IIS,导致apache无法启动。如果要查看80端口被哪个程序占用,可以在命令行窗口中输入netstat
-o -an,找到占用该端口的程序的PID,然后在任务管理器中点"查看"->"选择列...",勾选"PID",找到该PID的程序,结束任务。
测试apache是否是否工作,安装后可以打开浏览器,输入http://localhost/验证Apache是否成功,如果成功则显示:It
works 字样。
2.安装PHP
首先下载PHP,网址为:http://www.php.net/downloads.php,最新版本为PHP5.2.6,注意下载有两种版本:.zip版本和
安装版。先执行安装版,安装中选择支持apache 2.2.x,那么会自动配置apache的http.conf文件、mime.types文件和产生PHP的php.ini文件。注意:在安装中我遇到过问题,如果选择默认安装,则很顺利没有错误,如果选择自定义安装且将所有的组件都选择安装,那么会发生错误,原因我现在也没搞清楚。
由于,安装版本内容不全,没有ext和pear等目录,所以,安装完后,将解压版解压到刚才的安装目录下。
3.apache与PHP整合
安装版的PHP安装后,apache2.2的httpd.conf,会自动添加以下两行(如果没有要添加上):
PHPIniDir "G:/JCDevTool/PHP5/"
LoadModule php5_module "G:/JCDevTool/PHP5/php5apache2_2.dll"
mime.type文件自动增加如下两行:
application/x-httpd-php
php
application/x-httpd-php-source
phps
注意:G:/JCDevTool是PHP的安装目录,如果是apache2.2,必须写"php5apache2_2.dll"。
PHP已apache模块的方式与Apache结合。是你的WEB网站具有支持PHP服务器脚本程序的能力。
4.测试是否配置成功
测试PHP是否加载成功:
编写一个PHP文件(hello.php):
hello将该文件复制到C:\apache2.2\htdocs中,然后浏览器中输入http://localhost/hello.php,如果显示"hello,php",则表示加载成功。
接下来介绍如何安装MySQL:
这个比较简单,首先下载MySQL,网址为:http://dev.mysql.com/downloads/,最新的稳定版本为5.0.67,下载完后按照安装向导一步一步就可以完成安装了。
最后介绍如何安装配置Mantis:
1.安装Mantis
首先下载Mantis,网址为:http://www.mantisbt.org/download.php,最新的稳定版本为Mantis1.1.4,下载完后解压到C:\mantis-1.1.4。
2.配置Apache
也就是向Apache暴露Mantis的位置。修改%APACHE_HOME%\conf\httpd.conf,在文件末尾添加以下文字,以配置mantis目录的访问权限:
Alias /mantis "c:/mantis-1.1.4/"
Options Indexes
AllowOverride None
Order allow,deny
Allow from all
注意:这里特别注意,必须写成UNIX路径的/,不能写成Window路径的\,否则会无法正确显示mantis。
可选配置:如果希望在浏览器中直接输入目录名(即http://localhost/mantis)就可以访问Mantis主页(如果不添加,则每次都显示Mantis目录下的文件和子目录列表,又安全隐患),可以在dir_module标签中添加上index.php:
DirectoryIndex index.html index.php
这样就可以在浏览器中直接输入目录名了(当然,这时候访问还会出错,因为mantis数据库还没建立呢,不要急,我们一会马上去创建。)
3.配置PHP
因为我们需要使用基于PHP的应用程序Mantis,而Mantis本身的特性需要(如使用MySQL数据库等),就要求我们去修改php.ini文件:
(1)包含Pear库(Mantis中用到了Pear库)
查找include_path,改为include_path=".;C:\php5.2\PEAR",并去掉前面的分号
(2)包含外部PHP库(因为需要知道php_mysql.dll动态库的路径)
查找extension_dir,改为extension_dir="C:\php5.2\ext",并去掉前面的分号
(3)包含PHP-MySQL库(因为需要支持MYSQL)
查找php_mysql.dll,去掉前面的分号,这样PHP就能调用mysql模块了
4.为Mantis创建表、数据
访问http://localhost/mantis/admin/install.php,输入MySQL的用户名和密码,然后点击Install/Upgrade
Database,就会自动建立Mantis所需要的数据库和所有数据表。(这里注意,这是和以前的mantis比较大的不同,以前的mantis,如mantis-0.19.4.tar.gz版本,会提供一个db_generate.sql数据库脚本来创建mantis需要的数据库,而新版mantis则通过install界面来自动创建。,还需要注意的是,这里的内容多是从mantis/config_inc.php中获取,特别需要注意的是Hostname一栏,默认值为localhost,而MySQL安装时变动了端口,则应该写成
localhost:端口号,别忘同时修改config_inc.php文件)
这里还要注意一个问题,有时创建时会失败,提示:【Checking PHP support for database
type 】的错误:BAD database is not supported
by PHP. Check that it has been compiled into your server.查看apache的log发现有如下错误:PHP
Warning: PHP Startup: Unable to load dynamic library
'd:\\Program Files\\PHP\\ext\\php_mysql.dll' - \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3\r\n
in Unknown on line 0 这是因为不能正确加载php_mysql.dll库,导致php与mysql不能连携,请检查环境变量中path是否有:【安装路径】\PHP和【安装路径】\PHP\ext
类似的配置。如果没有请将该路径添加到path中。特别再注意,添加后请务必重启OS,才能生效。
5.启动Mantis
访问http://localhost/mantis/,出现登录界面,(注意,mantis的默认用户名为administrator,默认密码为root。)
6.邮件服务器配置
在Mantis中注册新用户时,会给你指定的邮箱发一封邮件,点开邮件中的链接才可以设定密码,因此需要给Mantis添加邮件功能。
使用phpmailer作为邮件服务器,首先下载phpmailer,网址为:http://phpmailer.codeworxtech.com,下载完后解压到c:\phpmailer。
修改C:\mantis-1.1.4\config_inc.php,添加以下内容:
$g_smtp_host
= 'smtp.sina.com.cn';
$g_smtp_username
= 'xinqian3607';
$g_smtp_password
= '123456';
$g_use_phpMailer
= ON;
$g_phpMailer_path
= 'c:/phpmailer/';
$g_phpMailer_method
= 2;
$g_return_path_email
= 'xinqian3607@sina.com'
把其中的内容修改为你自己的邮箱信息就可以了,赶紧点击修改密码,试一试能不能收邮件吧~
【-------转载完毕-----------】
心得:
由于是第一次配置,以前都是其他人负责,所以,重新配置时很多概念都没有,就看手顺来配置,感觉很混乱,所以,去补充了一些周边知识,了解了这些知识后,再来看上面看似很繁琐的手顺,其实就很容易理解了。
知识1:WAMP=windows+Apache+MySQL+PHP,是一个开发网络应用程序的网络开发平台(全是开源软件),因为mantis就是PHP应用,即Mantis就是PHP脚本语言写出来的程序。所以,要使用mantis,先搭建好mantis运行的环境是必须的步骤。
知识2:mantis是需要数据库来管理用户登陆的BUG的,所以,我们还需要使用MySQL,当然,不是必须使用MySQL(插一句:mantis是希望实现与具体数据库系统无关的更通用的bug管理系统。从现在的数据库创建方式就很明确了。)
知识3:所以,配置的思路就是,apache(http.conf)支持PHP,PHP(php.ini)支持MySQL,apache(http.conf)支持Mantis;Mantis创建MySQL数据库;