/usr/web
の作成
/sys/lib/httpd.rewrite
/lib/namespace.httpd
を作成する
listen
の管理下で実行
pegasus-1.2.tgz
をとってくる。term% gunzip pegasus-1.2.tgz term% tar -xf pegasus-1.2.tarすると tar を実行したディレクトリに、ディレクトリ
pegasusが作成される。
term% cd pegasus term% cd httpd term% mk lib term% mk標準的なインストール先は
/usr/local/bin/386なので無ければ作成する。(あるいは他のディレクトリにインストールしても構わない)
term% mk install
/usr/web
の作成/usr/web
は Pegasus の標準設定では名前空間編成の基礎になるディレクトリである。/adm/users
に web
を登録する必要はない。/usr/web/doc /usr/web/etc /usr/web/mntが作成されていれば充分である。(最初はここから始めよう)
example/usr/webに書かれている。でも最初の内は CGI を使用しない方がよい。
/usr/web/docの下には書かない。これは単にコンテンツを盛りつけるベースのような役割を果たしている。
/usr/bob/www/docが推奨される置き場所である。
/sys/lib/httpd.rewrite
/lib/namespace.httpd
を作成するexample/lib/namespace.httpdに CGI を使用する場合の編成例が載っている。でも最初の内は CGI を使用しない方がよい。CGI を使用しない場合の編成は(あなたが bob だとすれば)
bind /usr/bob/www/doc /usr/web/docだけでよい。
listen
の管理下で実行/rc/bin/service/tcp80を作成する。その内容は
#!/bin/rc exec /usr/local/bin/$cputype/httpd $*である。アクセスモードを
--rwxrwxr-xに設定する。
/usr/bob/www/doc/index.htmlを作成し、適当な内容を書く。
以上の一般的な規則の他に、パスワードによってアクセスできるディレクトリや特定の IP のクライアントのみ拒否あるいは受け入れるディレクトリを定義できます。
/usr/bob/www/etcはアクセス制御ファイルの置き場所です。
殆どのソフトウェアにバグがあるように、Pegasus にもバグが残っているかも知れません。(発見したら報告をお願いします)
多数のユーザを抱えた場合には、ユーザが知っている情報はホームページに掲載される可能性があります。それがシステムのセキュリティを支えているような重要な情報であってもです。従ってそのような場合には認証サーバを別に持つべきです。CPU サーバの情報は全て公開される事を覚悟すべきでしょう。(管理の手落ちによって秘密の情報をオープンにしてしまう事は珍しくはない。)
/usr/alice/web/docの下に HTML ドキュメントを置けば良いだけです。
/~aliceで見る事ができます。alice は
/usr/alice/web/etcを持つ事ができて、この中に alice のファイルに対するアクセス制御ファイルを置くことができます。