mantis を IIS + SQLServer で使う方法

俺用手順まとめ。

前提条件
・iisが使えます。
・SQLServerが使えます。
・phpインスコしてません。

[1] windowsにPHPをインスコする。
phpの最新版windows用バイナリのzipを入手し、C:php にぶち込む。
php.ini-distC:WINNT にコピー。C:WINNTphp.ini にリネーム。
php5ts.dllC:WINNTsystem32 にコピー。
ntwdblib.zip を ネットで探して、解凍して C:WINNTsystem32 にコピー。
php.ini の設定を変更。いじる個所は5箇所。

以下
変更前
変更後

;include_path = “.;c:phpincludes"
include_path = “.;c:phpincludes"


doc_root =
doc_root = C:Inetpubwwwroot


extension_dir = “./"
extension_dir = “C:phpext"


;extension=php_mbstring.dll
extension=php_mbstring.dll


;extension=php_mssql.dll
extension=php_mssql.dll


[2] php 動作設定
iisでphpをスクリプトとして動作できるように設定。
iisで動作させたいサイトを選び、プロパティを開く。
[ホームディレクトリ]-[構成]-[アプリケーションのマッピング] で追加。
実行ファイル=
C:phpphp5isapi.dll
拡張子=.php
制限=GET,HEAD,POST,TRACE
スクリプトエンジン=
チェック
ファイルの存在を確認する=
チェック



[3]php動作確認
2個のファイルを用意し、適当なiis上のディレクトリに起きアクセスする。

phpinfo.php
<?php
phpinfo()
?>


dbtest.php
<?php
// DB接続テスト
define(“DB_server","localhost");
define(“DB_user","sa");
define(“DB_passwd","???");
define(“DB_db","???");


$db = mssql_connect(DB_server,DB_user,DB_passwd);
if($db){
 echo(“DB接続OK");
}else{
 echo(“DB接続NG!");
}
if(!mssql_select_db(DB_db,$db)) {
 die(“データベースに接続できませんでした
“);
}
?>

???は適切に置き換えること。
動いたら次。動かなかったらこれまでの手順見直し。php.ini書き換え時にはiis再起動が必要。



[3] Sqlserverの下準備。
エンタープライズマネージャーでmantis用テーブルを作成。ex.mantis
mantisテーブルの管理者権限をもつユーザを作成。ex.mantis_user
mantis_user 権限、パスワードをつけたらおしまい。



[4] mantis インスコ
iis上の適当なディレクトリに mantis を解凍したものを入れる。ex.mantis-1.0.7.tar.gz
http://~/mantisディレクトリ/admin/install.php にアクセス。
DBの場所をlocalhost
DBをMSSQL
sa と saのパスワード
mantis用テーブル
mantisテーブルの管理者ユーザID
mantisテーブルの管理者ユーザIDのパスワードを入力し、進める。

んで進めていった先でSELECTとinsertとupdateができないよ!って出たらOK。次。



[5] 環境設定
config_inc.php.sample を mantisディレクトリから探し同じ場所に config_inc.php と名前を変えてコピー
んで中味を適当に変更する。最低限動けばOKならばこんな設定。

例:
 $g_hostname      = “localhost";
 $g_db_username   = “mantis_user";
 $g_db_password   = “mantis_password";
 $g_database_name = “mantis";
 $g_db_type       = “mssql";
 $g_administrator_email  =
'administrator@example.com’;
 $g_webmaster_email      =
'webmaster@example.com’;
 $g_from_email           =
'noreply@example.com’;
 $g_return_path_email    =
'admin@example.com’;
 $g_allow_file_upload = OFF;


 $g_allow_signup=OFF;
 $g_allow_blank_email=ON;
 $g_send_reset_password=OFF;
 $g_default_language = 'japanese_sjis’;



DBの設定と、日本語を使えるようにしている。


[6] 使う。
http://~/mantisディレクトリ/index.php にアクセス。
下のほうに赤フォントで
adminフォルダを消せ
administratorのパスワード変更汁!
と英語で出る。とりあえず無視。

administrator
root

でアクセス。できたらOK。

アカウント設定で administrator のパスワードを変更。
一旦ログアウトして

mantisディレクトリ の adminフォルダを消すか、別の名前に変更する。

再度、http://~/mantisディレクトリ/index.php にアクセス。今度は警告が出なくなっているはず。


あとは勝手に使えばいいと思いました。

まともに色とかフォントいじってblog書くと大変っすね。もうやんねー。

文字コードをUTF-8にすると、なぜか化ける文字があるのでSJISで。
config_inc.php の設定をsjisにしても文字化けする場合はデータ全部消した後で
アカウントに設定されている言語の属性を SJISにして再登録すると良いかも知れん。
文字化けの確認はエンタープライズマネージャーからDBを直で見るとよさげ。正常ならば、ちゃんと日本語入っているので。

(´∀`*)ノ

Posted by namahage