protozilla

protozilla

[1] Protozilla は Mozilla 拡張ソフトウェアで、 Mozilla 本体が対応していないプロトコルに対応するための枠組みを提供しています。任意の URI scheme を比較的簡単に定義できるようになります。

mozdev.org - protozilla: index <http://protozilla.mozdev.org/>

[3] 昔 (1.2 位の頃) は Mozilla 本体についてきたみたいですが、いま (1.5 とかの頃) はついていないみたいです。

非標準の URI scheme をどんどん定義できるものを標準で含めておくのはどんなもんかなーと思っていたのですけど、別配布ならまあいいでしょう。

URI scheme

[5]

cgi+
Local で CGI スクリプトを実行させることができます。
protozilla
Protozilla 自身の機能 (Protozilla console とか) で使っています。

このほか、例として cat+:, myhttp:, redirect:, scp:, whois: の実装が用意されています。 (<http://www.mozdev.org/source/browse/protozilla/pipella/proto/sample/>)

[6] + で終わる scheme 名だと、 HTML のリンクのような参照では機能しないようになります。 但し scheme 規定部が空である場合 (cgi+: だけ) のときはこの規制を受けません。

[7] 実際に scheme を定義する方法については <http://protozilla.mozdev.org/examples.html> をご覧下さい。

CGI 機能

[4] cgi+: scheme が予め定義されており、 CGIスクリプトを実行させることができます。 w3mlocalCGI 機能と同じようなものですね。

メタ変数の実装 (protozilla/pipella/proto/protozilla.js - view - 1.47 <http://www.mozdev.org/source/browse/protozilla/pipella/proto/protozilla.js?rev=1.47&content-type=text/x-cvsweb-markup> による):

メタ変数名参考
GATEWAY_INTERFACECGI/1.1固定
PATH_INFO階層的 scheme なら。
REQUEST_METHODGET固定
QUERY_STRINGURI の queryなければ空文字列
REMOTE_ADDR127.0.0.1
SCRIPT_DIRECTORYCGI スクリプトのあるディレクトリProtozilla 独自拡張
SCRIPT_NAMEURI の / からスクリプトのファイル名まで階層的 scheme なら
SERVER_NAME127.0.0.1
SERVER_PROTOCOLHTTP/1.0固定
SERVER_SOFTWAREProtozilla/0.1
URI_DATAURI の scheme 規定部分階層的 scheme なら。Protozilla 独自拡張
URI_HOSTURI の host 指定あれば。階層的 scheme なら。Protozilla 独自拡張
URI_PORTURI の port 部分陽に陰にあれば。階層的 scheme なら。Protozilla 独自拡張
URI_SPECURI 全体Protozilla 独自拡張

メモ