Kenji Arisawa
E-mail: arisawa@aichi-u.ac.jp
Aichi University
Kurozasa 370, Miyoshi-cho
Aichi, Japan
2002/02/01
Powered by Pegasus
URI 変換 (1)
名称
httpd.rewrite
配置
/sys/lib/httpd.rewrite
説明
このファイルは Pegasus にアクセスするクライアントからのリクエストに対して
正しい URI を知らせるのが本来の役割です。
例えばこのホストを pegasus.com とします。次の1行
/sys/man /man/man.html;
は、
http://pegasus.com/sys/man/1/acme
のようなクライアントからの要求が来た時に
http://pegasus.com/man/man.html;/1/acme
としてクライアントに再送を促します。
(ホストドメイン名が省略された場合には、自分のホスト名を付加します。)
また次の1行によって
/sys/man http://plan9.bell-labs.com/sys/man
plan9.bell-labs.com の /sys/man を参照する様にしむけます。
次の行も同様です。
/~rsc http://www.eecs.harvard.edu/~rsc
この例はユーザが他のサーバに移動した場合に便利です。
Pegasus はこのファイルの中で仮想ホストとユーザの Web ルートの設定を行って
います。
http://pegasus */usr/pegasus/www
/~bob */usr/arisawa/http
第二フィールドが `*' で始まる行がそれです。
但し管理の手間を省くために、ユーザが
$home/web/doc
を持っている場合には、httpd.rewrite に明示的に Web ルートが指定されていな
くても、このディレクトリがユーザのドキュメントルートとなり、
http://plan9.aichi-u.ac.jp/~alice/
のようにユーザ名の前に `~' を付けてブラウザからアクセスできるように
なります。
変換規則
パスのマッチング規則に関しては パス名適合規則を参照して下さい。
マッチするパターンが複数存在する場合には、その中で一番長いパターンが
採用されます。
マッチしたパスはパターンと一致した部分が第二フィールドで置き換えられます。