Mantis 搭建及自定義心得
安裝環境:
Windows Server 2003
Apache2.2.22+PHP5.4.39+MySQL5.5.28 可以下一個
easyphp或xampp,整合有這三個工具(
Apache2。2。22+PHP5。4。39+MySQL5。5。28)
一、簡介
MantisBT是用
PHP開發
的、基於
WEB的缺陷跟蹤系統
,並採用
開源資料庫MySQL
,構成一個完整的
開源
解決方案,如下圖1所示。MantisBT的主要功能可以分為3個部分:管理、缺陷報告和統計分析。每個部分又有一些子功能,子功能下面還有一些具體的功能,其功能結構,可以用圖2來描述。
圖1
MantisBT的功能特點:
支援多專案、多語言。
許可權設定靈活,不同角色有不同許可權,還支援自定義角色。
可以建立缺陷之間的關聯或依賴關係,從而更有效地管理專案。
缺陷統計分析功能比較強,有多種直方圖和圓餅圖,並能匯出CSV檔案供Excel作進一步分析。
有自定義欄位功能,可以滿足企業的一些特殊要求。
缺陷可以在不同專案間移動。
主頁可釋出公告、專案相關新聞,方便資訊傳播。
個人可定製Email通知功能,每個使用者可根據自身的工作特點訂閱相關的缺陷狀態郵件。
可以定製軟體公司特定的缺陷處理流程
與Bugzilla相比,Mantis有如下優點:
第一、Mantis相對Bugzilla有更好的操作介面。
第二、安裝和使用都相對簡單一點。對於一般的專案, Mantis作缺陷跟蹤,已經綽綽有餘。
二、下載安裝
由於Mantis是建立在PHP、MySQL環境之上的,所以Mantis安裝分為兩部分,既要安裝PHP、MySQL等支撐平臺,還要完成自身的安裝。支撐平臺的安裝可以參照Windows搭建Apache+MySQL+PHP環境,如果使用easyphp,xampp就更簡單了。以下詳細介紹mantis自身的安裝。
首先,Mantis官方下載地址為
http://www.mantisbt.org/download.php
,下載版本:mantisbt-1。2。19。zip 【可以下載更新的版本,但是要按官方要求匹配相應的Apache+MySQL+PHP環境】
其次,PHPMyAdmin官方下載地址為
http://sourceforge.net/projects/phpmyadmin/
,下載版本:phpMyAdmin-4。4。4-all-languages。zip 【如果是easyphp,xampp就不用安裝了】
1、安裝
(1)將下載的mantisbt-1。2。19。zip壓縮包進行解壓,放在D:\php目錄中,並將資料夾更名為:mantisbt
(2)將下載的phpMyAdmin-4。4。4-all-languages。zip壓縮包進行解壓,放在D:\php目錄中,並將資料夾更名為:phpMyAdmin
2、配置
(1) 確認apahce和mysql服務已經啟動
(2) 開啟瀏覽器,輸入
http://localhost/
phpMyAdmin,輸入MySQL的登入使用者名稱與密碼(root/123456),在“
SQL”
中執行建立資料庫指令碼:
create database mantisdb
;或者在“
資料庫”
中:填寫“mantisdb”、“utf8_general_ci”,點選“建立”,建立成功。
圖2
(3) 開啟瀏覽器,輸入
http://localhost/mantisbt/admin/install.php
進入相關配置
圖3
依次輸入:
mysql (資料庫型別)
localhost (伺服器名)
root (mantis資料庫擁有者的使用者名稱)
123456 (mantis資料庫擁有者的密碼)
mantisdb (mantis資料庫名)
root (mysql資料庫管理員使用者)
123456 (mysql資料庫管理員密碼)
最後點選“Install/Upgrade Database”這個按鈕,安裝開始,其實就是在MySQL中建立相關的表和初始化一些資料的過程,在我的電腦上花了大約七八秒鐘,然後就顯示完成資訊了。如果各個條目的右邊都顯示綠色的“GOOD”字樣的話,那就恭喜你,你已經成功安裝了MantisBT,如果有些條目顯示的不是“GOOD”,那就要回頭檢查一下,多半是資料庫許可權不夠的問題,比較省事的辦法就是我上面的做法,直接給MantisBT使用root賬號,就不會有許可權的問題了。
圖4
(4) 檢視是否可開啟 mantis 登入頁面(
http://
localhost/mantisbt/logi
n_page。php
)
(5) 配置完成的 Mantis 只有一個預設的系統管理員使用者:administrator,密碼: root。
圖5
(6)你會看到登入介面,登入介面下面有兩行紅字:
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:\php\mantisbt\admin”這個目錄。
三、漢化
預設情況下,顯示的語言是英文,現在需要將它漢化為中文,設定如下:
修改配置檔案: 在 Mantis 目錄下 config_defaults_inc。php
修改前: $g_default_language = ‘english’;
修改後: $g_default_language = ‘chinese_simplified’;
圖6
四、郵件配置
如果不需要傳送郵件功能可以不需設定。
1、修改配置檔案: 在 Mantis 目錄下 config_defaults_inc。php中設定“Mantis Email Settings”的相關資訊,包括下列內容:
將$g_administrator_email、$g_webmaster_email、$g_from_email、$g_return_path_email等設為有效的郵件地址;
將$g_phpMailer_method值設為2,表示以smtp方式傳送郵件;
將$g_smtp_hosty設定為有效的郵件伺服器主機名,如’
http://
mail。iflashbuy。com
’;
為$g_smtp_username 和$g_smtp_passwordy設定一個登入郵件伺服器的有效使用者賬號和口令。
//Mantis Email Settings
$g_administrator_email=‘test@iflashbuy。com’;
$g_webmaster_email=‘test@iflashbuy。com’;
$g_from_email=‘test@iflashbuy。com’;
$g_return_path_email= ‘test@iflashbuy。com’;
$g_use_phpMailer = ON; # 使用 PHPMailer 傳送郵件
$g_phpMailer_method=2; # PHPMailer 以 SMTP 方式傳送 Email
$g_smtp_host=‘mail。iflashbuy。com’; # SMTP 伺服器
$g_smtp_username = ‘test@iflashbuy。com’; # 郵箱登入使用者名稱
$g_smtp_password=‘密碼’; # 郵箱登入密碼
Note: 這邊示例使用的是公司的郵箱作為郵件伺服器測試成功。
大家經常會遇到,無法傳送郵件,而又不知道如何解決的問題,可以透過以下方法進行除錯:進入郵件測試介面,在瀏覽器中輸入測試地址,例如:
http://localhost/mantisbt/admin/test_email.php
,點選測試,就可以對傳送失敗原因進行檢測。
2、附上較理想的郵件設定
五、用 Administrator 註冊新使用者時設定密碼
為了方便可以由Administrator註冊好賬戶後告知需要的人,這樣便於管理,但是預設是無法修改賬戶密碼的,所以需要修改配置。
在 Mantis 目錄下 config_defaults_inc。php 檔案中找到 $g_send_reset_password
修改前:$g_send_reset_password = ON;
修改後: $g_send_reset_password = OFF;
特附上設定前與設定後的圖:
六、配置區域網訪問
通常情況mantisbt 是在局網站使用,那麼區域網中又是使用IP地址訪問,又需要修改配置。
在區域網的任一電腦中輸入:
http://
ip/mantisbt/login_page。
php
即可成功訪問。
【為了保證區域網內計算機都能訪問,建議關閉防火牆】
若失敗,可嘗試以下操作:
在Listen 127。0。0。1:80下一行加入一段程式碼Listen 192。168。1。101:80
注:192。168。1。101為Mantis伺服器的IP地址
如果以後郵件系統不希望出現bug的地址為127。0。0。1的,請把Listen 127。0。0。1:80注掉。只留Listen 192。168。1。101:80
七、上傳附件配置
Mantisbt 提交Bug是可以上傳附件的,但是上傳附件大小是有限制的,可以自己根據需求進行配置。
1、在 Mantis 目錄下 config_defaults_inc。php 檔案中找到Mantis File Upload Settings
$g_allow_file_upload= ON;
$g_file_upload_method= DISK; #上傳到硬碟
$g_max_file_size=2097152; #附件大小限制為2MB
$g_allowed_files= ‘txt,jpg,jepg,gif,bmp,doc’; #允許上傳的檔案型別
$g_disallowed_files=‘exe,com’; #不允許上傳的附件型別
$g_absolute_path_default_upload_folder=‘D:\php\mantisbt\upload’; #預設的檔案上傳的絕對路徑
$g_preview_attachments_inline_max_size=99999; #直接顯示任何小於這個位元組大小的bmp,png,gif,jpg格式的上傳檔案。
2、在MantisBT目錄下新建一個目錄upload
【注意最好不要用中文目錄名,目錄名中間也不要帶空格】
八、解決CSV匯出的中文顯示是亂碼
假如儲存的檔案為administrator。csv,其中中文亂碼解決辦法:
1、重新命名administrator。csv為administrator。txt
2、另存時選擇編碼方式為ASCII改名過來,就可以了
九、JpGraph
在進行缺陷分析時,須要繪製柱形圖、餅形圖、趨勢圖等,為了解決這個問題,要安裝JpGraph。如果不安裝這個軟體,也可以將資料複製到Excel等,再進行分析。如想了解JpGraph,可以參考官方網站
http://
jpgraph。net/
上的相關內容。例如,JpGraph2。3。3安裝到D:\php\mantisbt\library的目錄下,要修改3個地方來完成配置。
1、 Config_default_inc。php為JpGraph進行設定,即在”Mantis JPGRAPH Addon”段中修改下列相關的引數。
$g_use_jpgraph=ON; #將off改為on;
$g_jpgraph_path=’D:\php\mantisbt\library\jpgraph’; #JpGraph所在路徑
$g_graph_font=’simsun’; #定義所用的字型,這裡指定宋體
在檔案中的”Signup and Lost Passwod”段中修改下列兩個引數:
$g_system_font_folder=’c:\WINDOWS\Fonts’;
$g_font_per_captcha=’simsun。ttc’;
2、在mantisbtmantisbt\plugins\MantisGraph\core\graph_api。php檔案中增加中文字型simsun(宋體),其程式碼如下:
Function graph_get_font(){
$t_font_map=array(
‘simsun’=>FF_SIMSUM, //增加宋體對映
‘arial’ =>FF_ARIAL,
…
}
3、在mantisbt/library/jpgraph/jpgraph_ttf。inc。php檔案中注shi字符集編碼轉換,因為我們已全面採用了UTF-8字符集,其程式碼如下:
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;
}
未解決中文問題。。。
後記
:
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資料庫的連線引數,管理員的郵箱的;其他的要根據你的實際情況進行修改。
配置檔案載入順序:先載入config_defaults_inc。php,後加載config_inc。php。config_inc。php中的值會覆蓋config_defaults_inc。php
如果要修改,
建議拷到config_inc.php中修改
。
3、怎麼去掉
mantis
登陸介面右下角的圖片?還有
logo
的鏈
接地址?
1 準備好自己的logo,例如準備的logo為zhaoxiyu。gif、zxy。gif
2 把上面的兩個logo存放到C:/mantis-1。0。0a3/images
3 開啟C:/mantis-1。0。0a3/core中的html_api。php檔案
4 查詢function html_top_banner() 在這個函式中更 改echo ‘ http://www。 aomeitech。com/ ” title=“Hello AOMEI”>
這個需要根據實際情況更改例如
width=“270” height=“55
主要更改了頁面中最大的那個logo
5 查詢if ( ON == config_get( ‘show_queries_list’ ) ) 在下面更改
echo ‘ title=”AOMEI“>
mantis左下角的文字資訊的清除
1 開啟C:/mantis-1。0。0a3/core中的html_api。php檔案
2 查詢到echo ”/t“, $t_unique_queries 。 ‘ unique queries executed。
’, ”/n“;在前面添加個#號
3 查詢到echo ”/t“, $t_count, ‘ total queries executed。
’, ”/n“;在前面添加個#號
4 查詢到echo ”/t“, ‘
‘“>’, config_get( ‘webmaster_email’ ), ‘
’, ”/n“;在前面添加個#號5 查詢到echo ”/t“, ‘Mantis’, configet(‘mantis_version’ ), ‘’在前面添加個#號
6 把上一步驟緊接著的文字更改為
echo ”/t“, ‘
’, ”/n“;或註釋掉
還有很多可以自定義修改的地方,慢慢看程式碼吧……。。。。。