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

PythonでつくるMac用WebServerのためのCGI

発言者:noboru.Yamamoto@kek.jp
( Date Monday, April 03, 2000 16:01:59 )


始めまして、

Pythonは最近注目を徐々に集めている、オブジェクト指向、インタプリタ型プログラム言語です。
(http://www.python.org)

PythonはUnix,Windowsを始め、MacintoshOSの上でも動作します。(実際のところ、Pythonの最初のバージョンはMacintoshで開発されました。)

Macintosh用のPython実装であるMacPythonはAppleEventをサポートしており、WebStar等のWeb ServerとApple Eventを用いて情報を交換することで、CGIを開発することができます。最近、MacPythonのmailing-list上でPythonCGISlave.py (by Just von Rossum) なるプログラムが公開され、これまでUNIXでかいはつされた(Pythonでかかれた)CGIをそのままMacの上で利用できるようになりました。この公開された版はApple Eventの32KBの制限のため、送り返すデータが長い場合にはうまく動きません。WebStar用には、WebStarのSEND_PARTIALをもちいてこの制限を除いた版が作られました(不肖私の作品です)。

さて、WebStar以外のMac用WebServerではこの32KB の壁はどのようにして乗り越える事が可能なのでしょう?
御教授いただければ、ありがたく存知ます。

Noboru

田中求之 さんからのコメント
( Monday, April 03, 2000 16:22:18 )

Python は私も注目しています。オライリーの太い本も持ってます (^_^;;
実際に取り組んでみたいのですが、なかなか時間がとれないのです。
(Perl やるくらいなら、Python やろうと思ってます (^_^;; )

さて、

>WebStar以外のMac用WebServerではこの32KB の壁はどのようにして乗り越
>える事が可能なのでしょう?

これはサーバによって違うと思われます。

Quid Pro Quo は Send partial をサポートしています。

Web 共有や AppleShareIP の Web については、私は調べたことがないので
わかりません。

よしもと さんからのコメント
( Tuesday, April 04, 2000 21:11:54 )

こんにちは

朝も少し話しましたが (^^; W*のプラグインに対応したサーバならば
pythonをW*のプラグインにするという手はあると思います。
以前MacPerlで少しやってみたことはあるんですが、あまり期待した
効果はなかったもので、pythonがプラグイン化したらどうなるか、非常に
興味があります。

ということで、山本さん、期待しておりますです (^^;

おがさわら@東京工科大学 さんからのコメント
( Wednesday, April 05, 2000 11:24:14 )

私もPythonに興味を持ち始めたところです。

で、ちょっと話題がずれてしまいますが、zopeというアプリケーション
サーバがあるらしいのですが、これがCとPythonで書かれているという
ことなんですよね。

現在、zopeについて情報を集めているんですが....

→  zope japan

noboru.yamamoto さんからのコメント
( Thursday, April 06, 2000 14:20:37 )

田中さん、よしもとさん、おがさわらさん、コメントどうも有り難うございました。

田中さんへ:
SEND_PARTIALはやはり、それほどユニーバーサルな方法ではなさそうですね。

よしもとさんへ:
昨日漸くWebStarを4.2に(1.3から)アップデートしました。
Pluginのdevelopment kitもあったので、時間があれば覗いて見ようかとは思います。
PythonのCGIソースからBuildCGIApplet.pyでcgiとして実行できるAppletに変換
することもできますので、いまのところはPlugInの必要性を感じてはいないので、
すぐにというわけにはいきませんが。

おがさわらさんへ:
某UnixでZopeをコンパイルしようとすると、threadがサポートされていないので駄目、といわれて
configureできませんでした。Mac-OSのZopeがないのはそのためかもしれません。
Mac OS Xであれば、makeは可能かと思います(試してはいませんが)。

分厚いPython本はちょっと取っつき憎いかもしれません。Python Tutorialの日本語訳もありますので、御参考までにURLを書いておきます。

→  Python Tutorial日本語訳

田中求之 さんからのコメント
( Saturday, April 08, 2000 14:59:18 )

ひさしく python の情報はチェックしていないのですが、Python で
日本語の処理などはどうなっていますか? その点が CGI では気になる
んですが。

noboru.yamamoto@kek.jp さんからのコメント
( Monday, April 24, 2000 13:54:56 )

田中求之 さん Wrote:
>ひさしく python の情報はチェックしていないのですが、Python で
>日本語の処理などはどうなっていますか? その点が CGI では気になる
>んですが。

ちょっと痛いところを衝かれて返事が遅くなってしまいました。

"からさわ"さんのかかれた kconv/kstringというモジュールがあります。
http://hito.garage.co.jp/~mak

kconvは日本語コード(sjis/euc/jis)の相互変換のモジュール、
kstringは日本語対応ストリングモジュールです。kconvはpython版とC++版があります。

C++版については、一応、Mac上でコンパイルは通るようにはなったのですが、
"import"した途端に落ちてしまいます。
(これがおおよそ一週間前の状況、その後は手づかずじょうたいです。)

kconvはPython版がMac上で動作することは確認しました。

pooza さんからのコメント
( Wednesday, April 26, 2000 16:09:10 )

別スレッドで話題にさせて頂いておりますが、Pythonを使ったCGIに強く興味を
感じています。
現在、FreeBSD上でMySQLサーバを動かしているのですが、オライリーのMySQL本
(最近、日本語版が出ました)にPythonのインタフェースがあるという記述があ
り、「Macでも試せるかも?」などと期待を寄せております。

"PythonCGISlave.py" のWebSTAR版、よろしかったら私にも分けて頂きたいので
すが、どこかのサイトで公開されていますか?>noboru.yamamotoさん

noboru.yamamoto@kek.jp さんからのコメント
( Thursday, April 27, 2000 11:53:32 )

>pooza さんからのコメント
>( Wednesday, April 26, 2000 16:09:10 )

>別スレッドで話題にさせて頂いておりますが、Pythonを使ったCGIに強く興味を
>感じています。
すいません、フォローしていませんでした。

>現在、FreeBSD上でMySQLサーバを動かしているのですが、オライリーのMySQL本
>(最近、日本語版が出ました)にPythonのインタフェースがあるという記述があ
>り、「Macでも試せるかも?」などと期待を寄せております。

>"PythonCGISlave.py" のWebSTAR版、よろしかったら私にも分けて頂きたいので
>すが、どこかのサイトで公開されていますか?>noboru.yamamotoさん
WEBでは(まだ)公開していません。Original Authorと連絡をとってから公開したいとおもいます。
お急ぎでしたら、e-mailで御連絡ください。

>kconvはPython版がMac上で動作することは確認しました。
と書きましたがC版のコンパイル・動作を確認しました。公開準備中です。

さんからのコメント
( Saturday, November 04, 2000 03:42:18 )

もう半年以上レスがついてないみたいですが、MacPythonがv2.0にアップデート
した様です。
68K版は無い様です・・・ (^^;



→  Jack's MacPython Page