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

MACをローカルサーバにしてCGIテストをしたい

発言者:king
( Date Saturday, March 04, 2000 18:10:45 )


ウィンドウズではperlを実行できるアプリケーション
があるようですが、マックではないのでしょうか。
MACをローカルサーバにしてCGIテストをしたい
場合、どうすればいいのでしょう。
WEB共有ではCGIに対応していませんし・・・

そもそも、ふつうCGIのテストはどのような
環境で行っているのですか?

どなたかご存じの方、教えてください。
お願いします。

田中求之 さんからのコメント
( Saturday, March 04, 2000 18:36:52 )

MacPerl をインストールすれば Perl を実行することができます。

ただし、CGI として実行するには、MacPerl で CGI 形式に保存し直す
等の手順を踏む必要があります。また、OS が異なるわけですから、UNIX
用の CGI がそのまま実行できるとは限りません。

Web 共有も CGI をサポートしていますので、しかるべき手順を踏めば
Web 共有で Perl の CGI を実行することができます。

MacPerl と CGI をキーワードに過去の発言を検索してみてください。
山のように事例が出てきます。

田中求之 さんからのコメント
( Saturday, March 04, 2000 23:24:53 )

もし、最終的に UNIX サーバ(プロバイダのサーバ)で動かす CGI なのでしたら
Mac で UNIX を動かして(LinuxPPC 等)開発&テストしたほうが、結果的には
楽かも知れません。

もちろん、自分の Mac で UNIX を動かすという部分が面倒なわけですが (^_^;

king さんからのコメント
( Sunday, March 05, 2000 00:40:10 )

田中さんありがとうございます。
実はそう、UNIX サーバで動かすものなのです。
Web 共有も CGI をサポート、ということなので
説明をみてみたら「CGIに対応しており、
多くのサードパーティー製品をご利用になれます。」
としか書いてない!(使い方の説明などない!!)
この製品とは例えばどんなもんなのでしょうか??
フリーのプログラムのことでしょうか?
勝手に「WEBページ」の中に「cgi-bin」という
ディレクトリを作ってその中に.CGI(unix用)ファイルを
入れて、呼び出してみたのですが、これじゃ
だめですか?やっぱり。

MacPerlをダウンロードしてみましたが
いまいち使い方がわかりません。
そもそもCGIプログラムの呼び出し方がなぞ。

なにかご存じでしたらぜひぜひヒントをお願いします。

田中求之 さんからのコメント
( Monday, March 06, 2000 21:46:59 )

最終的に UNIX で動かす CGI を開発なさるのでしたら、やはり UNIX 環境を
Mac 上に構築するのがよいかもしれません。

Mac の CGI を開発する、あるいは UNIX の CGI を Mac に移植するというの
であれば、その考え方や、ノウハウは、この会議室の過去の発言を調べてもら
えば、山のように見つかるはずです。色々な事例の体験や苦労が述べられてい
ますので、きっと参考になるものが見つかると思います。

しかし、最終的に UNIX で動かすとなると、アクセスカウンターのような CGI
としては決して難しくないものであっても、Mac <-> UNIX の OS の違いや
CGI の実装の違いなど、考慮しなければならない要因が多くなってきます。ま
た、Mac 上では、最終的に、ロジックの確認は行えますが、それを UNIX に移
植したときに動くかどうかを確実に知ることは出来ません(ファイルの実行権
や、ファイルの排他処理など、条件が異なる点が多いため)。ですから、もし
どうしても Mac 上で UNIX の CGI の開発を行いたいということであれば、
UNIX 環境を構築して開発を行うのがよいのではないかと思います。

もちろん、新しいことにチャレンジすることに喜びを感じる/前向きに取り組
めるということであれば、MacOS 上の CGI に関する情報を得て、UNIX での実
装との違いを理解したうえで、MacOS 上で MacPerl を使って開発を行うこと
も出来ます。コストの点では、この方法が一番安上がりですが、その分、理解
しなければならない知識が多いですから負担は少なくありません。

実際、この会議室の過去の発言や資料室のリンク等を調べてもらえれば、Web
共有で MacPerl で作った CGI を動かす方法はわかるのですが、それも面倒だ
ということなのであれば、LinuxPPC でも導入して UNIX 環境を確保して CGI
を開発されたほうが、無駄に悩まなくて良いかと思います(もちろん、CGI の
開発自体の悩みは別です)。

ムライ さんからのコメント
( Monday, November 06, 2000 11:15:05 )

最近あたらしいWebページを作りました。タイトルは「MacOS Web共有でCGI」です。MacPerlをつかってローカルでのCGIテストが行えるように作成しました。UNIX(レンタルサーバ等)で使用する場合は、パーミッションの書き換えさえ出来ればほぼそのまま応用できるはずですので、一度見てみて下さい。

→  MacOS Web共有でCGI

竹内 さんからのコメント
( Tuesday, November 07, 2000 02:24:48 )

わたしもCGIの検証環境が欲しくて、Virtual PC上にRed Hat Linuxをインストールして
使ってたことがあります。

この方法もけっこういいですよ。
1台のマシンでMac OSとLinuxが同時に起動してますから、Mac側のブラウザから
CGIの検証が出来ます。
PowerBookのオンボードのEtherをLinuxに割り当て、MacからはPCカード経由で
クロスケーブルにて直結してました。
ヨコから出てるケーブルが、後ろに刺さってるという...。(笑)
スタンドアロンでありながらサーバ/クライアントでもあるので、喫茶店でも作業可能です。

Virtual PCはバックグラウンドに回るととても遅いですが、まあこのくらいの用途なら何とか...。
もしかしてご参考になれば。

プーさん さんからのコメント
( Tuesday, November 07, 2000 06:10:36 )

ありがとうございます!竹内さん!
実は私も、Powerbookに virtualPC&red hat linuxをインストールしてます。
Virtual PC は Mac と異なる IP アドレスが設定可能なので、サーバーとして動かして MacOS からブラウザで検証しようとしてました。
でもそのままではMacOSから相手がみえなくて、サポートに聞いてもできないと言われあきらめていました。
ハブを通せば可能かなあとは思ってたんですが、それだとPowerbookを使うメリットがありません。
PCカードを使うとは気がつきませんでした。目からうろこです。
早速試してみます。
PHP+SQLデータベースの勉強したいのですが、VirtualPCではきついですかねえ?

木本豪 さんからのコメント
( Tuesday, November 07, 2000 09:46:13 )

どこにもつながっていない一台の Powerbook で
サーバとクライアントを同時に動かしたいということなら
下記リンクの文書が役に立つと思います.


→  NW 59 - スタンドアロンマシンでのネットワーク設定

matsui さんからのコメント
( Friday, November 10, 2000 11:59:05 )

私もMacをローカルサーバにしてCGIのテストをしたいのですが、
Mac OS X PBはどうなのでしょうか?Parlも入っているそうなのですが、
UNIX用CGIのテスト環境になるのでしょうか?

田中求之 さんからのコメント
( Friday, November 10, 2000 22:29:13 )

>UNIX用CGIのテスト環境になるのでしょうか?

なります。というか、UNIX が走ってますから。 Apatch + Perl という定番が
動かせます(私は動かしたことはないのですが)。

PB の段階では、むしろ、AppleScript の CGI が全く使えない状況です。

竹内 さんからのコメント
( Saturday, November 11, 2000 03:55:44 )

すみません、ぼ〜っとしていて遅くなりました。

> PHP+SQLデータベースの勉強したいのですが、VirtualPCではきついですかねえ?
まあきついといえばきついのかもしれませんが、そのへんは割り切りじゃないでしょうか。
実際に稼働させる環境とするのは難しいでしょうが、
勉強の環境としてはオッケ〜なのではないかと。
遅い環境で鍛えた技術を速い環境で活かすということなら、逆よりいいと思いますし。(笑)

プーさん さんからのコメント
( Saturday, November 11, 2000 08:13:18 )

>竹内さん。
早速試すといっておきながら、忙しくてできません。
落ち着いたらまた報告します。すいません。

木本さんのリンクの方法では、物理的接続がなくてもできそうなのですが、これも時間がなくて試せてません。(汗)
でも貴重な情報ありがとうございます。

今井真人 さんからのコメント
( Saturday, November 11, 2000 21:25:41 )

 昔、MachTenというMacOS上で動くUnixを使ってテストしていたことが
あります。

 現在は、マックをクライアントとして、BetBSDやらLinuxやらを
Netatalkでアップルトーク接続してファイルをいじって、プログラムし
てます。ただ、サーバを含んだ環境整備が大変といえば大変かも。

 最近は常時接続になり、自宅から職場のサーバをいじることもできるの
で、上記の方法で満足してます。