前回はFileMaker Serverのインストール、およびXML Web公開の動作確認までをおこなった。とくに設定をおこなっていないマシンの場合、そのままではPHPは使用できない。今回はPHPを動作させるまでの手順と、これまでに作成してきたFileMakerファイルのデプロイ手順を紹介しよう。
FileMakerビルトインのPHPを使用しない理由とは
PHPを動作させるまでの手順についてだが、本コラムでは前回のFileMaker Server展開アシスタント解説中、PHPのインストーラ部分について「とくに理由がない場合は"いいえ"(インストール済みのPHPエンジンを使用)を選択したほうがよいだろう」とした。やや筆者の思想もあるが、おおまかな理由は次のとおりだ。
- FileMakerにビルトインされているPHPとその設定ファイルがFileMaker Serverに依存することになる
- ビルトインのPHPについて、アップグレード方法についての説明がない。PHPのセキュリティアップデートなどにたいして、即座に対応できない可能性がでてきてしまう
とくに前者についてだが「FileMakerビルトインのPHPを使用する」前提でFileMaker Webアプリを実装をしてしまった場合、当たり前だがその環境が前提で動作するものができあがってしまう。ユーザがあらかじめ限定されている小規模な環境ならOKだが、PHPファイルのデプロイ先がWindows/Mac OS X以外のOSだった場合や、ほかのWebアプリが稼動しているWebサーバではむずかしい話となってくる。ある環境では動作しているのに、ある環境では動作しないといったことはよくある話だ。運用中のシステムにたいしてトラブルを起こさないよう、またトラブル時の切りわけ要因をすこしでも減らすため「環境に依存した実装」は極力避ける。これらの理由から、前回では「とくに理由がない場合は"いいえ"(インストール済みのPHPエンジンを使用)を選択したほうがよいだろう」とした。
Mac OS X LeopardでPHPを使う
さて、ここからはFileMaker Serverに付属するPHPインストーラを使用せずにPHPを動作させる手順を紹介しよう。
PHPを動作させるようにApacheの設定ファイルを変更する。Mac OS X Leopardの場合は/etc/apache2/以下のhttpd.confを編集する。バックアップを取った上で管理権限をもつユーザで編集をおこなうか、sudoを使って作業しよう。
% sudo vi /etc/apache2/httpd.conf
修正前のhttpd.conf該当行
#LoadModule php5_module libexec/apache2/libphp5.so
修正後のhttpd.conf該当行
LoadModule php5_module libexec/apache2/libphp5.so
先頭の#(コメントアウト)を削除するだけという単純な作業内容だ。システム環境設定の「共有」メニューから"Web共有"の再起動をおこなうか、ターミナル上で次のコマンドを実行してApacheを再起動させる。
% sudo apachectl restart
続いて動作確認をおこなう。ホームディレクトリ以下の「サイト」(Sites)にphpinfo()を実行するPHPファイルを作成する。
phpinfo.php
<?php
phpinfo();
?>
Webブラウザを開き、http://localhost/~(ユーザ名)/phpinfo.phpにアクセスする。
FX.phpを使用するにはcURLおよびmbstring(マルチバイト文字列関数)が有効になっている必要がある。cURL, mbstringとそれぞれ検索し、表示されているかを確認しよう。
PHPの動作環境はこれで完了だ。
FileMakerファイルのデプロイ
続いてFileMakerファイルのデプロイをおこなう。
ここでは第2回から使用しているファイル「fxphp_test.fp7」をもちいる。まずはFileMaker Server Admin Consoleを起動する。インストール時に作成したFMS-(サーバ名).appを実行するか、FMS開始ページを開いてAdmin Consoleを起動させよう。
Admin Console起動後、ファイル「fxphp_test.fp7」をFileMaker Serverの公開ディレクトリにデプロイする。公開ディレクトリはとくに設定をおこなっていなければ/Library/FileMaker Server/Data/Databases以下になる。Finderかターミナル上で直置きするか、データベースアップロードアシスタントを使用してファイルをデプロイする。
FileMakerファイルのデプロイが完了したら、データベースを開く。
実際にFileMaker Proからファイルが開けるかどうかの確認と、XML Web公開経由でファイルにアクセスできるかを確認する。
http://localhost/fmi/xml/FMPXMLRESULT.xml?-db=fxphp_test.fp7&-lay=testLayout&-findanyにアクセスし、ErrorCodeが0となっていることを確認 |
今回はここまでだ。次回はWebアプリ側のPHPデプロイ手順とその動作確認、カスタマイズすべき項目などを紹介していこう。