このページは福井県立大学の田中求之が2006年1月まで運用していた Mac のサーバ運用に関する会議室 「Web Scripter's Meeting」の記録です。情報が古くなっている可能性がありますのでご注意ください。

ファイルメーカーProをCGIとして動かす。

発言者:木下@キー・プランニング
( Date Sunday, February 07, 1999 00:10:18 )


以前、私のサイトのゲストブックがポート番号の関係で、ファイヤーフォー
ル内の方などには不自由をお掛けしておりましたが、考えてもみなかった
解決法が見つかりましたので、連絡かたがたTipsを公開します。

実は、その解決方法とは、ファイルメーカーProをacgiとして使うことです。
???と思われる方が多いと思いますが、

1.ファイルメーカーProのアプリケーションのエイリアスを作る。
2.ファイル名を「xxx.acgi」に変更する。
3.そのエイリアスをhttpサーバの管理下フォルダに置く。
4.パラメータの書式は、CDMLの記述に準じる(パスの表記に注意)。

嘘のようですが、これで本当にファイルメーカーがCGIとして動きます。
一部のCDMLで問題が生じるので、完全互換ではありませんが、アイディ
ア豊富な方ならこれを利用して面白いことができるかもしれません。


→  Guestbook FM.acgi

木下@キー・プランニング さんからのコメント
( Sunday, February 07, 1999 00:11:51 )

ちなみに、発案者は私ではなくて、USのMLからアイディアを得ました。

田中求之 さんからのコメント
( Sunday, February 07, 1999 00:21:12 )

なんと、こんな方法があったんですねぇ。なまじサーバーとして動くよりも
便利かもしれませんね。

前田隆博 さんからのコメント
( Monday, February 08, 1999 01:21:59 )

すごい方法ですね!

おそらくファイルメーカーProに飲み込まれているLassoのAPIが機能しているのでしょうね。
ファイルメーカーProのWeb機能を使用する時との違いはPlug-In?では動作しない
という点でパフォーマンスに影響が出るぐらいでしょうか。

という事はファイルメーカーProのアプリケーションを acgi名で複数
作成し、WebSTAR等の専用のWebサーバでまとめて動かすとアクセスが集中
しても個別に処理を分散できそうですね。
1つのアプリケーションで複数のデータベースファイルへのリクエストを
同時にこなすのと、複数のアプリケーションで同時にこなすのではどちらが
効率が良いのか気になるところです。
データベースファイルそのものは1ユーザーしか同時に利用出来ないですから
1つの方が無難かナー?

複数作成する場合のソフトウェアのライセンスはどうなるのだろう?
1つのコンピュータ上であれ問題ないのだろうか?


はなたにともみ@kudzilla.com さんからのコメント
( Monday, February 08, 1999 02:37:15 )

「完全互換じゃない」というところに少々引っかかりますが、
すごくおもしろそうですねぇ。
 手がすいたらさっそくやってみようと思います。

木下@キー・プランニング さんからのコメント
( Monday, February 08, 1999 09:50:40 )

>「完全互換じゃない」というところに少々引っかかりますが、

ほとんどのタグは問題ないようですが、[FMP-LinkFirst][FMP-LinkLast]
[FMP-LinkNext][FMP-LinkPrevious]など表示範囲を超えたレコード移動
用のタグは上手く動きません。

理由は簡単で、普通(Webコンパニオン)なら
(http://xxx.xxx.xxx.xxx/)FMPro?-db=...
と置換されて正解なのですが、CGI版だと
(http://xxx.xxx.xxx.xxx/)FMPro.acgi?-db=...
というリンクが必要だからです。

元々、アンオフィシャルな方法でファイルメーカー社のサポートもあり
ませんから、Own your riskの精神でしか使えないのは言うまでもあり
ません。

LAPSHA さんからのコメント
( Tuesday, February 09, 1999 17:44:32 )

初めまして
FileMakerProをcgiとして動かすのに興味があります。
不勉強で分からないのですが、FileMakerProをcgiとして動かすことは、例えばTango for FileMakerや、AppleScriptを使うのと比較してどのようなメリットが考えられますか?