天天看点

Windows下搭建Mantis详解

下边是在windows下搭建mantis的详细过程,太长了,只能分开发上来,不过我会附一个pdf的文件上来,需要的可以下载。

搭建环境:

        apache_2.2.13-win32-x86-no_ssl.msi

        php-5.3.0-win32-vc6-x86.zip

        mysql-5.0.22-win32.zip

        mantisbt-1.1.7.zip

        辅助工具:

        ems(mymanager_lite.zip):可以通过界面形式操作mysql数据库

        phpmailer(phpmailer-ml_v1.5.zip):搭建mantis邮件服务器

        jpgraph(jpgraph-2.3.4.rar):实现mantis的统计报表功能

安装并配置apache

运行下载的软件开始安装,开始都是next,到如下界面时:

        设置系统信息

        network domain:

        在network domain下填入您的域名(比如:ok.com)

        server name:

        administrator's email address:

        上述三条信息仅供参考,其中联系电子邮件地址会在当系统故障时提供给访问者,三条信息均可任意填写,无效的也行(以后需要修改时可以在apache安装目录下的conf文件夹下找到httpd.conf这个文件进行编辑,查找servername可以修改服务器名,想让别人通过这个访问,需要去掉这句话前边的#;查找serveradmin可以修改管理员的邮件地址)。

        端口选择:

        下面有两个选择,图片上选择的是为系统所有用户安装,使用默认的80端口,并作为系统服务自动启动;另外一个是仅为当前用户安装,使用端口8080,手动启动。

        注意:检查80端口有没有被占用,我安装时就由于打开iis,导致apache无法启动。如果要查看80端口被哪个程序占用,可以在命令行窗口中输入netstat -an,找到占用该端口的程序的pid,然后在任务管理器中点"查看"->"选择列...",勾选"pid",找到该pid的程序,结束任务。

3、接着到选择安装方式的界面,选择custom的安装方式,这样可以选择安装路径,选择好后一路next即可,知道finish,安装完成。

3、配置(注意:修改配置文件后需要重启apache,修改才能生效):

        1)开始—>所有程序—>apache http server 2.2—>configure apache server—>edit the apache httpd conf configuration file,点击打开,这时打开的是apache的配置文件httpd.conf;

        2)在apache安装目录下,找到conf文件夹,打开里边的httpd.conf。

安装php

选择适合的版本:

在网上找到一段php版本的说明,如下:download the vc6 builds if you are using the standard apache.org web server. the vc9 builds should be used for the apache lounge binaries or iis.

a thread safe version should be used if you install php as an apache module. the non thread safe version should be used if you install php as a cgi binary.

   因为我安装的是标准版的apache,而且需要以apache module模式安装php,因此下载的是vc6的thread safe版本,大家可以根据自己的需要选择适合的版本。

3、我下载的是压缩包,把它解压到指定的位置,我的设定在“d:\php”

4、配置:

        1)把d:\php\php.ini-development或php.ini-production(如果是其他版本的php,可能需要改php.ini-dist)改成php.ini;

        2)查找extension_dir,改为extension_dir="d:\php\ext" ,并去掉前边的分号,因为ext文件夹下有很多我们可能需要调用的扩展库;同时需要在系统环境变量的path里边添加上php安装路径和其子路径ext,方法是:“我的电脑”上右键—>属性—>选择“高级”标签—>点选“环境变量” ,在“系统变量”下找到“path”变量,选择,双击或点击“编辑”,将“;d:\php;d:\php\ext”加到原有值的后面,然后全部确定。

        注意:添加后请务必重启os,才能生效,否则不能正确加载php扩展库,比如mantis要用到的php_mysql.dll,不过可以先配置完,到安装mantis的数据库前再重启。

        3)查找php_mysql.dll,将这一行前面的号去掉,这样php就能调用mysql模块了,如果没有就自己加进去extension_dir=php_mysql.dll  

        4)查找include_path,找到“; windows: "\path1;\path2"”,把它下边一行改为 include_path = ".;d:\php\pear" ,并去掉前面的分号,因为mantis中用到了pear库,需要包含pear库。

5、将php以module方式与apache相结合,使php融入apache(如果下载的是.msi安装版本的php,安装中选择支持apache 2.2.x,那么会自动配置apache的http.conf文件、mime.types文件和产生php的php.ini文件,由于,安装版本内容不全,没有ext和pear等目录,所以,安装完后,将解压版解压到刚才的安装目录下,此括号内是根据网上下载的配置文档整理的,因为自己直接用的压缩包,没有验证安装版本的)

   1)打开apache的配置文件http.conf,搜索#loadmodule ssl_module modules/mod_ssl.so ,在此句下边添加如下两行:

      loadmodule php5_module d:/php/php5apache2_2.dll

        phpinidir "d:/php"

        第一行指以module方式加载php;

        注意:d:/php/php5apache2_2.dll是php的安装目录下的dll文件,如果是apache2.2,必须写"php5apache2_2.dll",如果是其他版本的apache,可以到php安装目录下找相应的dll文件,php与apache的版本一定要对应

        第二行指明php的配置文件php.ini的位置。

   2)搜索addtype application/x-gzip .gz .tgz,在这行下边添加如下一行:

      addtype application/x-httpd-php .php

      你也可以加入更多,实质就是添加可以执行php的文件类型,比如你再加上一行“addtype application/x-httpd-php .htm”,则.htm文件也可以执行php程序了,你甚至还可以添加上一行“addtype application/x-httpd-php .txt”,让普通的文本文件格式也能运行php程序。

   3)目录默认索引文件也可以改一下,因为现在加了php,有些文件就直接存为.php了,我们也可以把“index.php”设为默认索引文件,搜索directoryindex,找到如下一段:

        <ifmodule dir_module>

          directoryindex index.html

        </ifmodule>

      把中间一句修改为:

        directoryindex index.php index.html

        优先顺序可以自己排,我把index.php放在第一位了。编辑完成,保存,关闭。

6、验证是否配置成功:

   在apache的安装目录下的htdocs文件夹下建一个index.php文件,代码如下:

   <?php

        phpinfo();

        ?>

安装mysql

安装:

在3个选项中选择第3个custom,在接下来的安装中可以自己进行一些设置。

安装路径可以自由选择

        这里是询问你是否要注册一个mysql.com的账号,或是使用已有的账号登陆mysql.com,一般不需要了,点选“skip sign-up”,按“next”略过此步骤。

        现在软件安装完成了,出现上面的界面,这里有一个很好的功能,mysql配置向导,不用向以前一样,自己手动乱七八糟的配置my.ini了,将 “configure the mysql server now”前面的勾打上,点“finish”结束软件的安装并启动mysql配置向导。

        选择配置方式,“detailed configuration(手动精确配置)”、“standard configuration(标准配置)”,我选择“detailed configuration”。

        选择服务器类型

        developer machine:开发测试类,mysql占用很少资源

        server machine:服务器类型,mysql占用较多资源

        dedicated mysql server machine:专门的数据库服务器,mysql占用所有可用资源

        大家根据自己的类型选择了,一般选“server machine”,不会太少,也不会占满,大家根据自己需要进行选择,因为我是在自己电脑上测试搭建,所以选择了第一个“developer machine”。

        选择mysql数据库的大致用途

        multifunctional database:通用多功能型,好

        transactional database only:服务器类型,专注于事务处理,一般

        non-transactional database only:非事务处理型,较简单,主要做一些监控、记数用,对myisam数据类型的支持仅限于non-transactional

        随自己的用途而选择了,我这里选择“multifunctional database”,按“next”继续。

        对innodb tablespace进行配置,就是为innodb 数据库文件选择一个存储空间,如果修改了,要记住位置,重装的时候要选择一样的地方,否则可能会造成数据库损坏。我这里没有修改,使用用默认位置,直接按“next”继续。

        选择您的网站的一般mysql访问量,同时连接的数目

        decision support(dss)/olap:20个左右

        online transaction processing(oltp):500个左右

        manual setting:手动设置,自己输一个数

        我这里选“decision support(dss)/olap”,按“next”继续。

        是否启用tcp/ip连接,设定端口,如果不启用,就只能在自己的机器上访问mysql数据库了,我这里启用,把前面的勾打上,port number:3306,按“next”继续。下边的选项是设定服务器模式,建议勾选。

        这个比较重要,就是对mysql默认数据库语言编码进行设置,第一个是西文编码,第二个是多字节的通用utf8编码,第三个可以选择自己需要的编码。按 “next”继续。

        选择是否将mysql安装为windows服务,还可以指定service name(服务标识名称),是否将mysql的bin目录加入到windows path(加入后,就可以直接使用bin下的文件,而不用指出目录名,比如连接,“mysql.exe -uusername -ppassword;”就可以了,不用指出mysql.exe的完整地址,很方便)。按“next”继续。

        这一步询问是否要修改默认root用户(超级管理)的密码(默认为空),“new root password”如果要修改,就在此填入新密码,“confirm(再输一遍)”内再填一次,防止输错。“enable root access from remote machines(是否允许root用户在其它的机器上登陆,如果要安全,就不要勾上,如果要方便,就勾上它)”。最后“create an anonymous account(新建一个匿名用户,匿名用户可以连接数据库,不能操作数据,包括查询)”,一般就不用勾了,设置完毕,按“next”继续。

确认设置无误,如果有误,按“back”返回检查。按“execute”使设置生效。

        下边是一些摘自网上的安装出错时的解决办法,如果安装时出现问题,可以参照下边方法,可能会有帮助:

如果一次安装不成功,卸载后,不会自动删除安装目录下的文件和数据文件,应自己手动删除才能重新安装,否则会有影响

           存在须删除文件的地方:

        1.你选定的安装目录或默认的安装目录

        2.你指定的数据文件存放目录

        3. c:\documents and settings\all users\application data目录

如遇安装完配置最后一步启动服务失败,原因可能是以前装过没有卸载干净。可卸载重新安装来解决,也可取消配置,在cmd用命令“net start mysql”启动

安装ems,可以通过图形界面操作mysql数据库

<a href="http://www.jspcn.net/mngtools/mymanager_lite.zip" target="_blank">安装mantis 下载地址:http://downloads.sourceforge.net/mantisbt/mantisbt-1.1.7.zip 我下载的是当时的最新稳定版本1.1.7。 安装: 把mantis的压缩包解压到自己指定的目录,我的路径是d:\mantis。 配置apache         在apache的配置文件中设置mantis的目录为虚拟目录。修改httpd.conf,在文件末尾添加以下文字,以配置mantis目录的访问权限:         alias /mantis "d:/mantis/"             &lt;directory "d:/mantis/"&gt;             options indexes              allowoverride none              order allow,deny              allow from all               &lt;/directory&gt;         注意:这里特别注意,必须写成反斜杠/,不能写成斜杠\,否则会无法正确显示mantis。 为mantis创建表、数据          访问http://127.0.0.1/mantis/admin/install.php,出现如下界面,并按照图示填写:                  这里和以前的mantis比较大的不同,以前的mantis会提供一个 db_generate.sql数据库脚本来创建mantis需要的数据库,而新版mantis则通过install界面来自动创建,特别需要注意的是hostname一栏,默认值为localhost,而如果mysql 安装时变动了端口(mysql的默认端口是3306,如果安装时变动了则按此说明修改),则应该写成 localhost:端口号。         这里还要注意一个问题,有时创建时会失败,提示:【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不能连携,请检查上边安装php后进行配置时需要添加的环境变量中是否添加了,如果已经添加,请确认是否重启系统了。     注意:上图说的那个checkbox不要勾选,“print sql queries instead of writing to the database”这个选项的意思是打印出sql查询,但是不实际执行创建数据库的动作。如果是要安装mantis的话,不需要选这个选项。在选上这个选项的情况下点击最下边的install\update database后会报错,这个好像是mantis的adodb库跟php逻辑之间的问题。由于某些原因,为了在修改或丢掉一些列之前丢掉约束,adodb库需要有活动的数据库连接,并发出混有php逻辑的请求,很多手动重新创建的sql请求是冗余的,因此会在选了“print sql queries instead of writing to the database”这个选项时打印出的sql代码中丢失,所以导致报错。         安装成功后界面如下:          启动mantis         访问http://127.0.0.1/mantis/,出现登录界面,mantis的默认用户名为administrator,默认密码为root。 设置中文显示: 编辑mantis安装目录下的config_defaults_inc.php文件 搜索$g_default_language,并修改为:$g_default_language                = 'chinese_simplified'; 注意:有的版本的mantis简体中文的表示方法不同,可以根据下边数组$g_language_choices_arr        = array()里边定义的各种语言中找相应的简体中文的表示方法。</a>

<a href="http://www.jspcn.net/mngtools/mymanager_lite.zip" target="_blank">配置邮件服务器:         在mantis中有新用户注册时,会给其指定的邮箱发一封邮件,点开邮件中的链接才可以设定密码,因此需要给mantis添加发送邮件的功能。 下载地址:http://jaist.dl.sourceforge.net/ ... pmailer-ml_v1.5.zip         如果安装的是其他版本的php,需要选择适合自己php版本的phpmailer的版本,我选择的是适合php5的版本,可以自由选择路径把它解压,我把它解压到d:\phpmailer-ml_v1.5。 修改d:\mantis\config_inc.php,添加以下内容:            # phpmailer             $g_use_phpmailer = on;             $g_phpmailer_path = 'd:/phpmailer-ml_v1.5/';             $g_smtp_host = 'smtp.163.com';//发送邮件服务器             $g_smtp_username = 'scmroad';//发送邮件账户的用户名             $g_smtp_password = '123456';//邮件地址用户名对应的密码             $g_phpmailer_method = 2;//此处的数值可为0,1,2;0为调用了一个mantis内置的mail()函数来发送邮件;1为sendmail方式;2为使用smtp方式,登录到邮件服务器内来发送邮件                          $g_return_path_email = '[email protected]';//这个是管理员自己的邮件地址,接受对mantis操作的提示邮件 修改mantis的时间 在config_inc.php中添加如下语句:          #时区设置         putenv("tz=asia/shanghai");         如果想设置时间显示的格式,还可以再加上如下语句:          $g_complete_date_format = 'y-m-d h:i:s';         单引号内的字母分别代表:年-月-日 时-分-秒,可以根据自己的习惯修改格式。         如果这样操作不能解决问题,需要修改php.ini的date.timezone = prc,修改php.ini后,需要重新启动apache服务。 登陆界面上的两个警告的处理         刚配置好的mantis登陆界面会有如下两个警告:         warning: you should disable the default "administrator" account or change its password.         warning: admin directory should be removed.    解决第一个警告,需要修改administrator的密码。    解决第二个警告,需要把mantis安装目录下的admin文件夹删除,一般情况,为了以后能够继续使用,可以重命名为_admin,或者直接将其压缩成一个admin.rar。 配置文件上传 1、在config_inc.php里添加如下两句:         $g_allow_file_upload   = on;         $g_file_upload_method = disk; 2、在mantis安装目录下新建一个文件夹upload,再在mantis建立的项目中把文件上传路径设置为“upload”(通过web方式),这样上传的文件就会存放在upload目录中 3、修改上传文件的大小限制:         config_inc.php 中添加 $g_max_file_size = 5000000; # 5mb(根据自己的需要修改)         php.ini中修改upload_max_filesize = 5m 和 post_max_size = 5m 4、如果upload文件夹安全性高,不具备写权限,上传文件时会有问题,这时需要给此文件夹增加可写权限。(方法:右键点图片保存的文件夹,选择"属性"-&gt;"安全",点"添加"-&gt;"高级"-&gt;"立即查找",在查找结果中选择"everyone"后点"确定",在点"确定",然后把"everyone"的"完全控制"钩上,最后点"确定") 6、设置附件浏览功能:         比如,在提交一个bug的时候,有时候会有截图提交附件情况,如果想直接看到错误截图而不想自己下载后再看,这也是需要设置就能实现的。但是这个功能只是针对bmp, png, gif, jpg格式的图片文件而言,提交的doc等文件就不在之列了。只需将config文件中de $g_preview_attachments_inline_max_size 进行设置即可实现此功能。当将这个设置为0的情况,那么查看bug的时候是永远不会出现附件贴图的,但是如果你将这个设置为一个足够大的尺寸,那么就会在bug里直接出现图片,这个数值是以字节计算,如果图片上传为32210字节,则你把$g_preview_attachments_inline_max_size=32211,而且任何小于这个字节大小的bmp, png, gif, jpg格式的图片文件直接显示了。 配置统计报表 下载jpgraph:http://www.jpgraph.cn/soft/jpgraph-2.3.4.rar         注意:jpgraph 1.x 版本是针对php4,2.x 是针对php5的,请根据php的版本下载对应版本。         下载后把它解压到mantis安装目录下的core文件夹下的jpgraph文件夹内。 在config_inc.php里添加如下语句:         #统计报表         $g_use_jpgraph = on;         $g_jpgraph_path = "d:/mantis/core/jpgraph/src/"; #设置jpgraph的路径         $g_graph_font = 'chinese_gbk';  在php.ini将“;extension=php_gd2.dll”前面的分号删除,这个模块是jpgraph在显示图表和进行汉字编码转换是所必须的。 修改mantis安装目录下的core目录下的graph_api.php,搜索graph_get_font,在graph_get_font函数中添加:'chinese_gbk' =&gt; ff_simsun 修改jpgraph文件夹下的src目录下的jpgraph_ttf.inc.php,将111行到118行注释掉,如果版本不同,可能行数不对应,参考如下内容:            /*        elseif( $aff === ff_simsun ) {                     // do chinese conversion                     if( $this-&gt;g2312 == null ) {                         include_once 'jpgraph_gb2312.php' ;                         $this-&gt;g2312 = new gb2312toutf8();                   }                     return $this-&gt;g2312-&gt;gb2utf8($atxt);                 }*/ 解决csv导出的中文显示是乱码:          假如到处的文件为administrator.csv,其中中文乱码解决办法:重命名administrator.csv为administrator.txt,另存时选择编码方式为ascii改名过来,就可以了 说明 1、如果是在windows下装,要特别注意,文件路径的“/”,不能使用“\”,这在php配置文件中是注释的含义。 2、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数据库的连接参数,管理员的邮箱的;其他的要根据你的实际情况进行修改。</a>

本文出自seven的测试人生公众号最新内容请见作者的github页:http://qaseven.github.io/