Kenji Arisawa
E-mail: arisawa@aichi-u.ac.jp
Aichi University
Kurozasa 370, Miyoshi-cho
Aichi, Japan
2002/02/01
Powered by Pegasus
httpd
名称
httpd
用法
httpd [-sm] [-t timeout] [-a srvaddress] [-d domain] [-n namespace]
[-r webroot] [-R rewrite] [[httpd] dummy .. incalldir]
説明
オプション
-s: サーバモードで実行する。
このオプションを付けない場合には listen によって呼び出される。
-m: CGI でマウントを許可する。
このオプションは現在の所 CPU サーバのカーネルが古い場合にのみ役に立っています。
-t: CGI プログラムに対するタイムアウト。
バグを持った CGI プログラムに対するガードです。
指定しない場合には 5 秒に設定されます。
-a: サービスアドレス。
指定しない場合には tcp!*!80 に設定されます。
-d: ドメイン名
指定しない場合にはシステムのドメイン名が使用されます。
-n: 名前空間編成ファイル
指定しない場合には /lib/namespace.httpd が使用されます。
-r: Web のルートディレクトリ
指定しない場合には /usr/web が使用されます。
-R: URI 変換ファイル
指定しない場合には /sys/lib/httpd.rewrite が使用されます。
残りの引数は listen によって呼び出しを受ける時に、listen が与えます。
直接指定する必要はありません。
ドキュメントルートはどこにあっても構いません。
名前空間編成ファイルの中で指定します。
Pegasus の標準的な置き場所は
/usr/local/bin/386
です。その場合、典型的な実行法は次の通り。
サーバモードの場合には
/usr/local/bin/386/httpd -s
を /bin/rc/cpurc の中に書いておく。
listen の下で実行する場合には
/rc/bin/service/tcp80
を作成し、実行フラグを立てて以下の内容を書いておく。
#!/bin/rc
exec /usr/local/bin/$cputype/httpd $*
サービス空間
Pegasus の httpd によるサービスは編成された名前空間の中で行われます。
名前空間は名前空間編成ファイルによって編成されます。
ドキュメントルート
ドキュメントルートはサービス空間の中での
/doc
に固定されています。Pegasus にアクセスするクライアントはドキュメント空間の
中のピリオドで始まらないファイルにのみアクセスできます。
サービス空間の中の他のファイルは CGI を通じてのみアクセスできます。
ドキュメント空間
ドキュメントルートの下にあるファイルの集合
URI 変換ファイル
URI 変換は2つのレベルで行われます。
/sys/lib/httpd.rewrite は Pegasus にアクセスする全てのリクエストに対して
適用されます。
リクエストはその後でユーザへのもの、仮想ホストへのものなどがふるい分けられ
サービス空間の中の
/etc/rewrite
によってまた変換を受けます。(この事はユーザや仮想ホストが URI 変換ファイル
を持てる事を意味しています。)
前者はシステム管理上必要な基本的な変換や仮想ホストの設定を、
後者はホームページの作成者が必要とするページの移動情報を記述します。
(実際上の意味は、/sys/lib/httpd.rewrite はシステムファイルであり、
管理特権が無ければ変更できません。それに対して /etc/rewrite は実際には
データの作成者のファイルであり、必ずしも管理特権を必要としません。)
注意
ここに述べた Web ルートやドキュメントルートの説明は Pegasus を通常の Web
サーバと同じ様に、もっぱら1つのドキュメントルートの中に全てのドキュメントを
置く使いかたをする場合のものです。
ユーザのドキュメントルートあるいは仮想ホストのドキュメントルートの編成に
関しては次を参照して下さい。
ユーザ
仮想ホスト
関連ファイル
/lib/namespace.httpd
/sys/lib/mimetype
/sys/lib/httpd.rewrite
/sys/log/http
/rc/bin/service/tcp80
/lib/namespace
/lib/ndb/local