Flash ActionScript2.0@Wiki

mojavi導入1

最終更新:

匿名ユーザー

- view
管理者のみ編集可

mojavi導入手引き 『その1』


フレームワークについて

Windowsプログラミングなどをしたことのある方には結構なじみがあるフレームワークという言葉ですが、mojaviを使うとPHPでもイベントドリブン型のソフトを簡単に作ることができます。

導入(Windows)

ここでは、PHPを開発するに当たっての環境をWindowsで構築します。(私は普段、ノートPCで開発することが多いので、最初にローカルにデバグ環境を作ります。実機を使うのは最後のテスト程度)

mojaviはPHPで動作するので、WindowsにPHPが入っている必要があります。また、mojaviはCGIとして動作するのでApacheも必要です。
が、今回はmojaviのテストなのでWWWサーバーはWindowsで簡単に使えるANHTTPDを使うことにします。

  1. PHP4.3.11のダウンロード
http://www.php.net/downloads.phpに行ってPHP4.3.11のZIPパッケージをダウンロードします。

  1. ANHTTPDのダウンロード
http://www.st.rim.or.jp/~nakata/に行って、ANHTTPDのZIPパッケージをダウンロードします。

まず、ANHTTPDを起動しPHPを使えるようにします。
ANHTTPDのメニューから「オプション」を選び「一般」タブの下のほうにある「追加」というボタンを押します。
出てきたダイアログボックスの「拡張子」には「.php」を入れます。「実行プログラム」には先ほどダウンロードしてきたPHPの中にある「php.exe」にパスを通します。
「一般パスでも実行する」と「PATH_TRANSLATEDを使う」にチェックを入れ「OK」を押します。

次に、今回の実験に使うディレクトリにパスを通します。
「エイリアス」タブを選択し、「一般パス」のリストの下にある「追加」を押します。出てきたダイアログには任意のエイリアス名とそのエイリアスの実態(ドライブパス)を入力します。

私はエイリアス名には「mojavi_tutorial」とし実態は「D:/www/mojavi_tutorial」としました。

これからの説明はすべてドキュメントルートを「D:/www/mojavi_tutorial」として説明します。環境が違う方は、自分の環境に照らし合わせて説明を読んでください。

テスト

ANHTTPDを起動してください。
ブラウザで「127.0.0.1」と入力してください。ANHTTPDのディレクトリのインデックスリストが表示されれば正常にサーバーは動いています。

続いて、ドキュメントルートに「phpinfo.php」というファイルを作成し以下の内容を書き込んでください。
<?php
   phpinfo();
?>
そうしたら、ブラウザから「http://127.0.0.1/mojavi_tutorial/phpinfo.php」を実行します。NotFoundにならなければエイリアスの設定もきちんと動いています。
但しこの状態ではPHPは実行しません。
Windowsディレクトリ(C:\WINDOWS)にある「php.ini」というファイルを開いてください。439行あたりに以下のようになっている箇所を変更します。
==============変更前=================
; cgi.force_redirect is necessary to provide security running PHP as a CGI under
; most web servers.  Left undefined, PHP turns this on by default.  You can
; turn it off here AT YOUR OWN RISK
; **You CAN safely turn this off for IIS, in fact, you MUST.**
cgi.force_redirect = 1

==============変更後=================
; cgi.force_redirect is necessary to provide security running PHP as a CGI under
; most web servers.  Left undefined, PHP turns this on by default.  You can
; turn it off here AT YOUR OWN RISK
; **You CAN safely turn this off for IIS, in fact, you MUST.**
cgi.force_redirect = 0 ←ここを変えた

保存したらもう一度「http://127.0.0.1/mojavi_tutorial/phpinfo.php」を実行して画面が現れたら成功です。これでやっとサーバーが正常に動作し、PHPも使える状態になりました。


mojaviのセットアップ

mojavi-2.0.0-1.zipからダウンロードします。
解凍後、そのままのディレクトリ構造ではうまく使えないので以下のように変更します。「COPYRIGHT」や「CHANGELOG」は削除しました。「lib」ディレクトリに関してはディレクトリ毎削除します。

mojaviの設定

続いてmojaviが正常に動くように設定をしてやります。
  • 「www/index.php」の編集
15行目あたりに「require_once」で始まる行がありますね。ここには以下のように入力します。
require_once('./../webapp/config.php');

  • 「webapp/config.php」の編集
このファイルにはWindowsの場合絶対パスを入力するほうが混乱無く動作します。まずは、20行あたりにある「define('BASE_DIR'...」という箇所を編集します。
define('ROOT_DIR','D:/www/mojavi_tutorial/'); //←追加
define('BASE_DIR', ROOT_DIR . 'webapp/');
「ROOT_DIR」には今回のドキュメントルートへの絶対パスを与えます。
====26行目あたり、変更前=======================
define('LOG_DIR','logs/');
====変更=====================================
define('LOG_DIR',BASE_DIR . 'logs/');

====32行目あたり、変更前=======================
define('MOJAVI_FILE','mojavi/mojavi-all-classes.php');
====変更=====================================
define('MOJAVI_FILE',ROOT_DIR . 'mojavi/mojavi-all-classes.php');

====37行目あたり、変更前=======================
define('OPT_DIR','mojavi/opt/');
====変更=====================================
define('OPT_DIR',ROOT_DIR . 'mojavi/opt/');

====52行目あたり、変更前=======================
define('SCRIPT_PATH','');
====変更=====================================
define('SCRIPT_PATH','http://127.0.0.1/mojavi_tutorial/');

早速、ブラウザでアクセスしてみます。


エラーがでますが、mojaviの正常なエラーなので問題ないです。
NotFoundなどブラウザのエラーが出てしまった場合は設定ミスです。もう一度ディレクトリ構造などから見直してみてください。

次回

今回はmojaviのセットアップまで行いました。
次回は実際に動かしてみます。