マソム自宅サーバ構築の記録
- ■
-
Mantis 1.1.8 のインストール
-
作成日:09/07/02
更新日:09/08/07
前置き
バグ管理システム
Mantis 1.1.8 をインストールしてみます。
2009年7月現在の安定版です。
Mantis はGPLライセンスにもとづいて利用できるオープンソースです。
以下を参考にさせて頂きました。有り難うございます。
Mantis - バグ管理システム -
mantis のインストール
絶対動く!MANTIS B級レシピ その6 アップロードファイルのサイズ変更
インストールの準備
私の環境は、Fedora 7 で、Apache2.2、MySQL5.0、PHP5.2 です。
MySQL にMantis 用のデータベースとユーザを作成しておきます。
MySQLのルートユーザを使いたくなかったからです。
作業は phpMyAdmin で行いました。
Mantisをインストール
私はユーザディレクトリにソース置き場を作ってあるので、そこにダウンロードしました。
ダウンロードした
mantisbt-1.1.8.tar.gz を展開します。
$ cd /home/ユーザ名/src
$ wget http://downloads.sourceforge.net/sourceforge/mantisbt/mantisbt-1.1.8.tar.gz?use_mirror=jaist
$ tar -xzf mantisbt-1.1.8.tar.gz
Apacheのドキュメントルート以下にインストールします。
$ su
# mv mantisbt-1.1.8 /home/ユーザ名/htdocs/mantis
# chown -R apache.apache /home/ユーザ名/htdocs/mantis
http://www.mathomfactory.com/mantis/admin/install.php を実行します。
・Type of Database --- 変更せず、「MySQL(default)」のままにします。
・Hostname (for Database Server) --- 変更せず、「localhost」のままにします。
・Username (for Database) --- 作成しておいたMySQLのユーザ名を入力します。
・Password (for Database) --- 作成しておいたMySQLのユーザのパスワードを入力します。
・Database name (for Database) --- 作成しておいたMySQLのデータベース名を入力します。
・Admin Username (to create Database) --- MySQLのルートユーザ名を入力します。
・Admin Password (to create Database) --- MySQLのルートユーザのパスワードを入力します。
・Print SQL Queries instead of Writing to the Database --- チェックしないままにします。チェックするとDBとテーブルを作りません。
次に設定ファイルを編集しておきます。
# vi /home/ユーザ名/htdocs/mantis/config_inc.php
<?php
$g_hostname = 'localhost';
$g_db_type = 'mysql';
$g_database_name = 'MySQLのデータベース名';
$g_db_username = 'MySQLのユーザ名';
$g_db_password = 'MySQLのユーザのパスワード';
//日本語を指定
$g_default_language = 'japanese_utf8';
# --- email variables -------------
$g_administrator_email = 'mathom@mathomfactory.com';
$g_webmaster_email = 'webmaster@mathomfactory.com';
# the "From: " field in emails
$g_from_email = 'mathom@mathomfactory.com';
# the return address for bounced mail
$g_return_path_email = 'webmaster@mathomfactory.com';
# --- file upload settings --------
$g_allow_file_upload = ON;
$g_file_upload_method = DISK;
$g_max_file_size = '5000000'; # 5 MB
$g_disallowed_files = "php,php3,phtml,html,class,java,exe,pl";
# --- email settings all --------
$g_default_notify_flags['threshold_min'] = ANYBODY;
$g_default_notify_flags['threshold_max'] = NOBODY;
# --- account pref defaults -------
$g_default_bugnote_order = 'DESC'; //コメントを最新順に表示
$g_default_email_bugnote_limit = 1; //通知メールにコメントを1件出す
?>
設定が済んだら、Mantisにログインします。準備されているadministratorアカウントを使います。パスワードはrootです。
administratorでログインしたらアカウント名とパスワードを変更しておきます。
次に /home/ユーザ名/htdocs/mantis/admin/ディレクトリを削除します。
アップロードファイルを置くディレクトリも作成しておきます。Apacheが読み書きできる権限が必要です。
ユーザ登録の禁止
それから、ログイン画面でユーザ登録が出来ないようにしておきたいと思いソースを変更しました。
# vi /home/ユーザ名/htdocs/mantis/login_page.php
・・・ 省略 ・・・
// print_signup_link();
・・・ 省略 ・・・
# vi /home/ユーザ名/htdocs/mantis/signup_page.php
<?php
exit;
・・・ 省略 ・・・
アップロードファイルサイズの変更
アップロードファイルザイズの上限は、config_inc.phpに$g_max_file_sizeを設定しただけでは変わりません。
ソースを見ると、upload_max_filesize, post_max_size, $g_max_file_sizeの内、最小の値が使われていました。
私はphp.iniの値はそのままにして、.htaccessでupload_max_filesize, post_max_sizeを設定しました。
# vi .htaccess
・・・ 省略 ・・・
<IfModule mod_php5.c>
php_value post_max_size 5M
php_value upload_max_filesize 5M
</IfModule>
通知メールの変更
コメント追加の通知メールに、チケットの詳細を出さないように変更します。
理由は、詳細があるとコメント文を見逃してしまいがちだからです。
これは好みの問題なので、普通は必要のない変更です。
# vi /home/ユーザ名/htdocs/mantis/core/email_api.php
・・・ 省略 ・・・
function email_format_bug_message( $p_visible_bug_data ) {
・・・ 省略 ・・・
// コメント追加時にチケットの詳細文を出さない為の変更
# $t_message .= lang_get( 'email_description' ) . ": \n".wordwrap( $p_visible_bug_data['email_description'] )."\n";
if( count($p_visible_bug_data['bugnotes'])==0 ){
$t_message .= lang_get( 'email_description' ) . ": \n".wordwrap( $p_visible_bug_data['email_description'] )."\n";
}
}
・・・ 省略 ・・・
紆余曲折Tips