第 1 章 インターネットについて
第 2 章バーチャルサーバー
第 3 章 バーチャルFTPサービス
第 4 章 バーチャルE-MAILサービス
第 5 章 バーチャルウエブサービス
たいへん控えめに言っても、インターネットがHOTトピックになったと言うことは間違いありません。 インターネットと一緒にコンピュータ専門家も成長しましたが、現在多種多様なグループによって使われています。
もともと主な利用者は研究と教育関係者でしたが、 インターネットユーザーの数は、突然、1996年に爆発的に増加しました。 ユーザの数は3000万以上に届くまで成長しました。そして現在、ビジネスとしてはそのポテンシャルをまだ発揮していません。
誰でも何の手がかりなしにエキサイトするインターネット上でビジネスを展開しました。 このことは、インターネットは低コストでビジネスを展開するひとつの手段として考えられています。
広告のためにテレビや出版などを使うと、たいへんなコストがかかりますがインターネットはスモールビジネスユースにはうってつけです。
インターネットは、通信回線、パソコンといくらかの基礎的な技能を持つ誰もが利用することができます。 ビジネスの宣伝としては新聞、ラジオやテレビに広告することが有効であることは良く知られています。
それぞれの媒体は、それに特有な性質を持っています。 たとえば、テレビの音声のみをラジオで放送しても無意味なことです。 インターネットは新しい媒体であって、そして、それがどのように働くか知って、その結果として潜在的なビジネスを理解することが重要です。
あなたのバーチャルサーバーは高速回線に接続されたサーバーとして利用できます。 一般に、サーバーをインターネットに接続するためには専用回線と高価な接続設備とそのメンテナンス要因が必要です。
このバーチャルサーバーシステムを利用することで、専用線接続のサーバーとほとんど変わらないサービスを低コストで利用することが出来ます。
もしこのバーチャルサーバー技術を利用することなくインターネット上でサービスを提供しようとするとあなたは次のようなことをしなければなりません。
- インターネット接続プロバイダー(ISP)からあなたのオフィスまでの高速デジタル専用線
- あなたのオフィスとISPの接続ポイントにあなたの負担で高速デジタル専用線用 CSU/DSU が必要
- CSU/DSU からローカルネットワークへの接続のためのルーター
- 多くのメモリ、ハードディスク、パワフルなCPUを備えたワークステーション
- ワークステーションへのOSのインストール
- その他、WWW, FTP, E-MAIL, DNS などの各種サーバーのインストール
FIGURE 1 標準的な高速インターネット接続
このような高速回線を自前で用意するには回線費用、回線設備、ネットワークサーバーやコンサルタントに支払う金額は 数百万〜1千万円程度必要になるでしょう。
バーチャルサーバーシステムは高速かつ大容量回線を用意し、そこへいくつかのサーバーを接続します。 さらにそのサーバーをシェアすることによって1ユーザー毎の負担を軽減しています。
しかしながら、単にサーバーをシェアすることはめずらしいことではなく、 いわゆる接続プロバイダーが提供するホームページサービスやレンタルサーバーでは数百の一般ユーザーレベルのアカウントをひとつのサーバー上で与えてサービスをしています。
このバーチャルサーバーシステムは通常30〜60アカウントをひとつのサーバーでシェアし、それぞれのユーザー自身で自分のサーバーをコントロールできるよう
Virtual root 権限を利用することができます。 このことであなたはユーザーの追加やその他の機能をご自身の手でコントロールすることができます。
FIGURE 2 バーチャルサーバーシステム
オフィスで利用する電子メールサービスのために、 バーチャルサーバーシステムはあなたのビジネスにかかるコストを低く押さえることができます。
たとえば、オフィスの50人の電子メールアカウントを確保するためにインターネット接続プロバイダーから50個のダイアルアップアカウントを購入することはあまりにも不経済です。
バーチャルサーバーシステムでオフィス内の50人分の電子メールアカウントを作成すればダイアルアップアカウントは1個か2個をオフィス内で共有することで問題は解決します。
また、バーチャルサーバーシステムを利用することで高いコストを必要とする専用線接続導入のテストとして評価することもできます。
最初から大きな投資をすることなくあなたが始めるサービスやコンテンツが成功するか調べることが出来るわけです。
もし、あなたのサービスが大きな成功を収めて大変な人気を持つホームページ(1〜3万ヒットまたはアクセス/日)を持つようになればあなたのクライアントやあなた自身のために専用サーバーのハウジングサービスを利用することをお勧めします。
これらの詳細については CV-Server までご連絡ください。
バーチャルサーバーシステムは、ひとつのUNIXサーバーへ複数のバーチャルサーバーをホスティングします。 各バーチャルサーバーはそれぞれに独自のIPアドレスを持ち、DNS(ドメインネームサービス)に登録された独自のドメイン名を持ちます。
通常のバーチャルドメインサービスと異なるところはそれぞれのバーチャルサーバーが独立して動作している点です。 サーバーのコンフィグレーション、アクセスログその他をバーチャルサーバー毎に希望するように設定することができます。
バーチャルサーバーシステムは、現在以下のインターネットサービスを提供しています。
- WWW アクセスするクライアントへホームページを提供できます。
- アノニマスFTP あなたが公開したいプログラムや文書などをFTPで提供できます。
- SMTPメールサーバー あなたが発行したメールアカウントからのメールを全世界にデリバリーします。
- POP3メールサーバー あなたが希望するユーザーへ個別のメールボックスを提供することが出来ます。
以下の章は、これらを使う上記のサービスとその利用方法を説明します。 バーチャルサーバーがバーチャルシェルアカウントをサポートしないことに注意してください。
しかし、POP3アカウントとFTPアカウント(パスワードプロテクト可能な)を個々のユーザーに発行することができます。 これらのアカウントは無制限(ディスクスペース内で)にあなた自身の手で作成できます。
バーチャルサーバー管理者は、あなたのバーチャルサーバーをメンテナンスすることを担当します。 バーチャルサーバー管理者は、ユーザー名とパスワードが付与されます。
UNIXサーバーの上で、このユーザー名とパスワードは普通のUNIXシェルアカウントへアクセスができます。 バーチャルサーバー管理者は、以下のことができます。
- POP3メールアカウントの追加と削除
- メールエイリアス(メール自動転送)アカウントの追加と削除
- アノニマスFTPサーバー上のファイルのメンテナンス
- WWWサーバー上のHTMLファイルのメンテナンス
- CGIプログラムのインストールとメンテナンス
- アクセスログファイルのメンテナンス
バーチャルサーバーの管理者としてはある程度のUNIXの知識とプログラミングの経験があるとベストです (少なくともUNIXとプログラミングについて知る気持ちが必要です)。
しかし、UNIXのサーバーを1台丸ごと管理するよりは比較にならないほど簡単です。
以下はバーチャルサーバー管理者のための簡単なバーチャルサーバーの構成に関する説明です。 CV-Serverのセットアップが終わるとあなたに以下の情報が提供されます。
- あなたのバーチャルサーバーのIP(Internet Protocol)アドレス。 このアドレスはあなたのバーチャルサーバーへ割り当てられる
206.161.234.146 のようなものです。 これは通常覚える必要はありませんが、あなたの独自ドメイン名が登録されるまでの一時期には
TELNET や FTP するために必要です。
- バーチャルサーバー管理者ログイン名 これはその管理者が使うログイン名でバーチャルサーバーをメンテナンスするために使います。
- バーチャルサーバー管理者パスワード これは、上のログイン名のパスワードです。あなたは、UNIXの passwdコマンドを使うことによってこのパスワードを変えることができます。
もし、このパスワードを忘れたときは、v-info@creseed.co.jpへお問い合わせください。
あなたが実際にサーバーへバーチャルサーバー管理者としてログインすると以下のようなデレクトリが見えます。
- bin このデレクトリには sh, cat などの多くのプログラムがあります。 そして、バーチャルサーバーをサポートするスクリプトや、バーチャルサーバープログラムも含まれています。
- dev このデレクトリにはスペシャルファイル null が含まれています。 これはスクリプトやバーチャルサーバーシステムが使用します。
- etc このデレクトリにはメール(sendmail, POP)と関連する多くの重要なコンフィグレーションファイルが含まれています。
主なファイルは aliases, passwd, sendmail.cfなどがあります。
- tmp このデレクトリはスクリプトやバーチャルサーバーシステムがテンポラリエリアとして使用します。
- ftp このデレクトリーにはアノニマスFTPサービスを提供するときに見えるファイルが含まれています (詳しくは第
3 章をご覧ください)。
- usr usr デレクトリには、さらに以下のサブディレクトリがあります。
- bin 上の bin デレクトリと同じようにサポートプログラムやスクリプトが含まれています。
- lib このデレクトリにはバーチャルサーバーのためのシェアードライブラリーが含まれています。
シェアードライブラリーが何であるか見当がつかない場合はそれについて心配する必要はいりませんが、削除したりしないように気を付けてください。
- local/etc/httpd このデレクトリはバーチャル httpd のサーバールートです(詳しくは第
4 章をご覧ください)。
- log ここにはバーチャルサーバーシステムが生成する "messages" という名のシステムログファイルがあります。
- mail ここにはあなたが作成したPOP3メールアカウントのメールスプールがあります(詳しくは第
5 章をご覧ください)。
- spool このデレクトリはメールサーバーの一時的なスプールとして使用されます。
- www これは本当のデレクトリではなく、httpd サーバールートの usr/local/etc/httpd
へのシンボリックです。これは cd usr/local/etc/httpd とタイプするより cd
www とした方が便利なので作ってあります。
あなたが TELNET でログインしたときのホームデレクトリは /usr/home/ログイン名/ ですが、バーチャルサーバーシステム(www,
sendmail, pop, ftpd)ではこのホームデレクトリがバーチャルルートデレクトリになります。 ここで注意しなければならないのは、あなたがバーチャルサーバーのための
CGI スクリプトなどを開発するときに httpd のパスを指定するときは /usr/home/ログイン名/usr/local/etc/httpd
ではなくバーチャルルートデレクトリからのパス /usr/local/etc/httpd を指定します。
インターネットのネットワークトラフィックの内およそ30%は、FTPです。 電子メールは、およそ6パーセントのトラフィックを占めています。
FTPはインターネットではメジャーなツールとして利用されています。
インターネット上には数えきれないほどのドキュメントやファイルをだれでも自由にダウンロードできるアノニマスFTPサーバーが数多く存在します。
基本的にはどのアノニマスFTPサーバからでも、ファイルやデータをダウンロードすることができます。 このアノニマスFTPサーバーをあなたのバーチャルサーバー上で実現できます。
あなたが提供したいプログラムや文書などをアノニマスFTPサーバーで公開することができるのです。
バーチャルサーバーシステムは、誰もがパスワードなしでアクセスすることができる anonymous FTP と通常の
FTP をサポートしています。 anonymous FTP ではユーザーネームには "anonymous"
または "ftp" を、 パスワードにはふつう電子メールのアドレスを使用します。 一方、通常の FTP はバーチャルサーバー管理者が登録したユーザー名とパスワードを要求します。
バーチャルFTPサービスに使用されるサーバー名は通常次の名前が使用されます。
- ftp.ドメイン名.com (または .org など)
ドメイン名はあなたのバーチャルサーバーのドメイン名です。 インターネットでは通常サービスの名称をドメイン名の前に置いてサービスを提供するサーバー名をあらわします。
CV-ServerではFTPサービスは上のサーバー名を使います。
他にもたとえば、WWW なら www.ドメイン名.com、POP3サーバーなら pop.ドメイン名.com
が良く使われます。
CV-Serverでもこれらのサービスのサーバー名をデフォルトで使用します。
アノニマスFTPサービスが使用するのはホームディレクトリー内の ftp デレクトリのみです。 この制限とファイルやディレクトリーにパーミッションを与えることで外部からのアタックを最小限に押さえます。
ftp デレクトリ内には次のサブデレクトリがあります。
- bin FTPクライアントが利用するプログラム ls が格納されています。
- pub このデレクトリにはあなたが提供したいファイルを格納します。サブデレクトリも作成できます。
アノニマスFTPでアクセスしてきたクライアントからあなたのアノニマスFTPサーバーへのファイルをアップロードすることを許可することも可能です。
ただし、セキュリティーのためアップロード可能なデレクトリ "incoming" デレクトリを作って他のデレクトリと分ける必要があります。
この "incoming" デレクトリはライトと実行可能パーミッションのみを与えて他のユーサーがアップロードしたファイルを閲覧することが出来ないようにします。
このことで、アノニマスFTPでログインしたユーザーが勝手にファイルを削除したり、あるいはW*ReZ (不正コピーソフトウエア)やポルノグラフィーに関係するファイルのアーカイブとして利用されることを防止します。
incoming デレクトリの作り方:
- ftp/pub デレクトリ内に "incoming" デレクトリを作成します(mkdir ftp/pub/incoming)。
- デレクトリのパーミッションを chmod で 733 にします(chmod 733 ftp/pub/incoming)。
これはアノニマスFTPユーザーに書込みのみを可能にして読み出し権限を与えません。
incoming デレクトリにアノニマスFTPユーザーによってアップロードされたファイルのオーナーはあなたがオーナーになっていますので希望するなら
pub デレクトリに移動するなどして分類後、公開することもできます。
すでにインターネットを利用しているあなたはE-MAILを活用していることと思います。 E-MAILはイントラネット/インターネットで利用できる最も便利なツールです。
通常、会社やクラブなどで社員や会員一人一人にE-MAILアカウントを発行しようとするとイントラネットを構築して高価なメールサーバーマシンやその技術的な管理を行う管理者が必要です。
さらに、インターネットとのメールを交換するには接続プロバイダーの間とファイアーウォール等を介して専用線で常時接続する必要も出てきます。
私たちのバーチャルサーバーを利用することで上記の問題の大部分が解決します。 つまり、イントラネットの構築やサーバーマシン、技術管理者、常時接続等なしで多数のメールアカウントを発行できるメールサーバーが利用できます。
全社員や会員、あるいはあなたのお客様へメールアカウントを発行することもできるのです。 このことで大変なコスト削減ができると私たちは確信しています。
バーチャルE-MAILハンドリングシステムは sendmail をベースに次のようなファイルとデレクトリで構成されています。
- etc/aliases このファイルはメールアドレスのエイリアス(別名)を定義します。次のセクションでこのファイルが使われます。
- etc/aliases.db このファイルは上のファイルがバイナリーデータベース化されたものです。vnewaliases
コマンドで作成されます。
- etc/sendmail.cf このファイルは sendmail のコンフィグレーションファイルです。通常、セットアップ時に適切に設定されていますので変更する必要はありません。
- usr/mail このデレクトリは E-MAILが格納されるメールボックスがメール到着時に作成されます。ここに格納されたメールはPOP3で取り出します。
- usr/spool/mqueue このデレクトリは sendmail が使用する送信メールのテンポラリーデレクトリです。通常送信すべきメールがないときはこのデレクトリは空になっています。
E-MAILエイリアス(別名)は到着したメールを別の指定したバーチャルサーバーあるいは別のサーバーのメールアドレスに転送を行なう機能です。
例えば、webmaster@your_virtual_server.com に届いたメールを you@xyz.ac.jp
に転送したい場合は次のようにします:
- etc/aliases ファイルを編集して次のような1行を追加します。 :
webmaster: you@xyz.ac.jp
編集するにはシェル上で pico, vi, or emacs などのエディタを使用するかFTPでアスキーモードで転送してください。
- 次に vnewaliases を使って etc/aliases.db ファイルのデータベースを更新します:
luna: {4} % vnewaliases
以上でエイリアス転送の設定は終了しました。エイリアス転送にはセクション 6.2 で解説している POP3アカウントの作成は必要ありません。
E-MAILエイリアスを利用することで転送先のアドレスを1個でなく複数のアドレスを指定して簡単なメーリングリストを作成することも可能です。
この簡単なメーリングリストのセットアップの方法は次の2つの方法があります。 4.3 セクションのE-MAILエイリアスの作成と同様にセットアップし、1つ1つのアドレスをコンマで区切って指定します。例えば、次のようにします:
myfriends: joe@xyz.com, fred@foobar.edu, mary@abc.org
しかしながらこの方法では転送先のメールアドレスが多くなるとその指定が大変になってくるためきわめて小規模のメーリングリストにしか向きません。
それより大きな規模のメーリングリストには :include: 機能を利用します。 :include:
機能は aliases ファイルとは別のファイルで転送先メールアドレスリストを指定します。 例えば、次のようにします:
- etc/aliases ファイルに次のような1行を追加します。
myfriends: :include:/etc/mylist
- 次に etc/mylist ファイルを作成し、そのファイルに1行毎に転送先メールアドレスを記入します。
joe@xyz.com
fred@foobar.edu
mary@abc.org
.
.
- 最後に vnewaliases を利用して etc/aliases.db データベースを更新します。
もし、設定が思ったように機能しない場合などの時は usr/log/messages ファイルを見てみてください。
このファイルにはあなたのバーチャルサーバーで発生した様々なエラーメッセージが記録されていて、あなたのバーチャルサーバーでのデバッグの参考にすることができます。
World Wide Webを利用することでテキスト情報だけでなくグラフィカルな画像やその他音声など多様な情報を発信することができます。
これらはあなたがバーチャルサーバーをビジネスに利用している場合、もっとも効果的にクライアントに対してアピールすることができるでしょう。
バーチャルウエブサービスは NCSA HTTP (Hyper-Text Transfer Protocol) サーバー(8)がベースになっています。 httpd関係のファイルは、あなたのホームデレクトリの usr/local/etc/httpd
に格納されています。 また、あなたのホームデレクトリには www というシンボリックファイルがありますがこれは
usr/local/etc/httpd へシンボリックされています。 これは cd usr/local/etc/httpd
とシェル上でタイプするよりも cd www とした方が簡単なため用意されています。 usr/local/etc/httpd
デレクトリには次の様なサブデレクトリがあります:
- cgi-bin このデレクトリは CGI (Comman Gateway Interface)を格納するためのデレクトリです。いくつかの
CGIが格納されていますが、あなたが他の CGIを利用したいときはこのデレクトリに格納することをお勧めします。
- cgi-src このデレクトリには cgi-bin デレクトリに格納されているソースファイルがあります。
- conf このデレクトリには NCSA HTTPD のコンフィグレーションファイルが格納されています。それぞれのファイルについては次のセクションをご覧ください。
- htdocs このデレクトリにはあなたのホームページなどのHTMLファイルや画像ファイルなどを格納します。
- logs このデレクトリには自動的に作成されるログファイルがあります。ログファイルについてはセクション
5.4 を参照してください。
あなたがアカウントを受け取った時点でバーチャルサーバーはすでにプリコンフィグレーションされています。 標準のコンフィグレーションではバーチャルウエブサーバーを最も高速にかつ安全に利用できるように設定されていますが、
希望するならこのコンフィグレーションを変更することが可能です。
httpd.conf ファイルはバーチャルウエブサーバー全般のコンフィグレーションを行ないます。
--------------------------------------------------------------------------------------
パラメータ ディスクプリクション
--------------------------------------------------------------------------------------
AccessConfig filename filename に ServerRoot で指定したデレクトリから見た
access.conf ファイルのパス名を指定します。
デフォルトの設定は AccessConfig conf/access.conf です。
AgentLog filename filename にクライアントが利用したブラウズソフトウエアの名称を
格納する agent_log ファイルへのパス名を指定します。
デフォルトの設定は AgentLog logs/agent_log です。
ErrorLog filename filename に ServerRoot で指定したデレクトリから見た
error_log ファイルのパス名を指定します。
エラーログにはバーチャルウエブサーバーで発生した様々なエラーが記録されます。
デフォルトの設定は ErrorLog logs/error_log です。
IdentityCheck [on | off] サーバが要求を行ったユーザ名をIDENTプロトコルによって検査を行うかを
指定します。
デフォルトの設定は IdentityCheck off です。
ResourceConfig filename filename に ServerRoot で指定したデレクトリから見た
srm.conf ファイルのパス名を指定します。
デフォルトの設定は Resource Config conf/srm.conf です。
ServerAdmin email_address email_address にサーバ管理者のメールアドレスを指定します。
デフォルトの設定は ServerAdmin webmaster@<your domain
name>. です。
ServerName hostname hostname にドメイン名またはDNS登録されている別名を指定します。
デフォルトの設定は ServerNameName www.<y
our domainname>です。
ServerRoot pathname pathname にウエブサーバーを配置するパス名を指定します。
デフォルトの設定は ServerRoot /usr/local/etc/httpd です。 (バーチャルウエブサーバー
が起動されるとユーザーのホームデレクトリ /usr/home/<login name> がルートデレクトリ /
となるので注意してください。)
TimeOut seconds ウエブサーバがクライアントからの要求を待つ時間を秒単位で指定します。
指定の時間が経過するとサーバはコネクションをクローズします。
デフォルトの設定は TimeOut 1800 です。
TransferLog filename filenameに ServerRoot で指定したデレクトリから見た
アクセスログファイルのパス名を指定します。
アクセスログファイルにはアクセス元、アクセスされたファイル名、日時などの情報が記録されます。
デフォルトの設定は TransferLog logs/access_log です。
TypesConfig filename filename にMIMEタイプとファイル名の対応を行う mime.types
ファイルへのパス名を指定します。
デフォルトの設定は TypeConfig conf/mime.conf です。
--------------------------------------------------------------------------------------
srm.conf (server resource management) ファイルは主にhttpdサーバがhtmlファイルやスクリプトを置く場所を制御するファイルです。
----------------------------------------------------------------------------------------------
パラメータ ディスクプリクション
----------------------------------------------------------------------------------------------
AccessFileName filename filename にディレクトリ毎にアクセス制御を行う時の制御ファイル名を
指定します。
指定しなければ、.htaccessというファイル名になります。
AddDescription text fileID このデレクティブはファイルのタイプを設定します。
text にはダブルクオテーションで囲んだファイルタイプの説明を、
fileIDにはファイルの拡張子か、絶対パスを指定します。
(例, AddDescription "image file" *.gif)
AddEncoding kind ext ext で指定した拡張子を持つファイルを kind で指定したエンコー
ド形式と関連付けます。
(例, AddEncoding compress Z)
AddIcon path name1 name2... ブラウザでファイルリストを表示するとき name? で終わるファイル名を
path で指定したアイコンとともにリストするよう指定します。
AddIconbyEncoding path name1 ... ブラウザでファイルリストを表示するとき name? で指定したエンコー
ド形式を持つファイルを path で指定したアイコンとともにリストするよう指定します。
AddIconType path type1 type2 ... type? で指定したMIMEタイプによって使用するアイコンを指定します。
AddType kind ext サーバで取り扱う新しい MIME タイプを作成します。2つのパラメターを指定し、
kind で MIMEタイプで"タイプ/サブタイプ"と指定します。ext にはファイルの拡張子を指定します。
Alias name path path で指定したパスをname で指定されたドキュメントルートからの別名で置き換えます。
DefaultType type サポートしている拡張子以外のファイルにアクセスした場合、どの MIMEタイプを
使用するかを指定します。デフォルトは text/plain が 使われます。
DefaultIcon pathname ブラウザでファイルリストを表示するとき、別に設定されていないファイルを
pathname で指定したアイコンとともにリストするよう指定します。
デフォルトの設定は DefaultIcon /icon/ unknown.xbm です。
DirectoryIndex filename クライアントがディレクトリ名の終わりに特定のファイルを指定しないで
ディレクトリのインデクスを要求したとき filename で指定したファイルを表示するように設定します。
例えば、 http://www.cv-server.net/ とアクセスされたとき index.htmlまたは index.htmを
表示するようにするには DirectoryIndex index.html index.htmのように指定します。
DocumentRoot path HTMLファイルを置くデレクトリを path で指定します。
デフォルトの設定は DocumentRoot /usr/local/etc/httpd/htdocsです。
(バーチャルウエブサーバーが起動されるとユーザーのホームデレクトリ
/usr/home/<login name> がルートデレクトリ / となるので注意してください。)
FancyIndexing [on | off] ディレクトリリストを表示する際に、インラインアイコンを使ったリスト表示を行
うかどうかを指定します。デフォルトの設定は FancyIndexing on です。
HeaderName filename ディレクトリインデクスをリストするときのトップに挿入するファイル名を
filename で設定します。
デフォルトの設定は HeaderName HEADER です。
IndexIgnore kind1 kind2 ... ディレクトリリストを表示する際にリストに表示されたくないファイル名を指定します。
デフォルトの設定は IndexIgnore */.??* *~ *# */ HEADER* */README です。
IndexOptions option1 option2 ... ディレクトリリストの表示方法を設定します。
FancyIndexing, IconsAreLinks, ScanHTMLTitles, Sup
pressLastModified, SuppressSize, と SuppressDescrip
tion が指定できます。
ReadmeName filename ディレクトリインデクスをリストするときリストの最後に表示するファイルを
filename で指定します。デフォルトの設定は ReadmeName README です。
Redirect pathname URL pathname でアクセスされたパスを新しい URL で指定した
URLへアクセスするように指定します。
ScriptAlias name path Aliasと似ていますが、CGIスクリプトを配置するデレクトリpath の別名を
name で指定します。
----------------------------------------------------------------------------------------------
access.conf ファイル(グルーバルアクセス制御ファイル(ACF))は WWWサーバ全体または特定のデレクトリへのアクセス制御規則を記述するファイルです。
このコンフィギュレーションファイルは Directory キーワードの間に制御節を記述します。例:
上の例は /usr/local/etc/httpd/cgi-bin AllowOverride デレクティブを設定しています。
AllowOverride デレクティブはアクセスコントロールファイル(.htaccess)で制御できるアクセス制御を設定します。
引数には下の各項目が指定できます。
- All. アクセスコントロールファイルでこのデレクトリのすべてをコントロールできます。
- AuthConfig. AuthName, AuthType, AuthUserFile, と AuthGroupFile
デレクティブによる認証を使用可能にします。
- FileInfo. AddType と AddEncoding デレクティブを使用可能にします。
- Limit. limit セクションデレクティブを使用可能にします。
- None. アクセスコントロールファイルを無効にします。
- Options. Options デレクティブを使用可能にします。
ユーザー認証を行うには下のデレクティブを設定します。
- AuthName. ユーザー名を尋ねるウィンドウに表示するコメントを指定します。
- AuthType. 認証をタイプを指定します。現在 Basic のみが指定可能です。
- AuthUserFile. パスワードファイルの絶対パス名(ルート(/)から記述)を指定します。
- AuthGroupFile. グループ認証を行うためのグループファイルを設定します。グループ認証を行わない場合は
/dev/nullを指定します。
Options デレクティブの引数に下の項目を指定してデレクトリの機能を設定することも可能です。
- All. すべての機能を有効にします。
- ExecCGI. このデレクトリで CGIスクリプトを実行可能にします。
- FollowSymLinks. シンボリックリンクされているファイルへブラウザのアクセスを許可します。
- Includes. このデレクトリでサーバーサイドインクルードを可能にします
- IncludesNoExec. サーバーサイドインクルードが可能でもスクリプトの実行を禁止します。
- None. 特別な機能を何も持たないよう指定します。
- SymLinksIfOwnerMatch. シンボリックリンクの所有者とファイルの所有者が同じ時にのみブラウザからのアクセスを許可します。
Limit セクションデレクティブには次の様な機能があります。
- allow hostname. アクセスを許可するホスト名またはドメイン名を指定します。
- deny hostnamehostname. アクセスを禁止するホスト名またはドメイン名を指定します。
- order orderingordering. Limitセクションの中で評価される denyとallow
の順番を定義します。デフォルトでは、deny の次に allow が評価されます。
- require entity1 entity2... entity1 に user, group, または
valid-userを指定し、 entity2 以降にユーザー名またはグループ名を列挙してアクセス可能なユーザーを指定します。指定するユーザー名は
AuthUserFile に記述されていなくてはなりません。
これらの機能は Limitデレクティブの間に挟んで指定します。例えば次のように使用します。
<Limit GET>
order allow, deny
allow from all
</limit>
この例では、"allow from all" が指定されているのですべてのホストからサービスへアクセス可能であると指定しています。
バーチャルサーバーのデフォルトのWebページは usr/local/etc/httpd/htdocs/index.html
に配置されています。 あるいは、www/htdocs/index.html でもアクセスできます。 あなたのバーチャルサーバーアカウントには
ポピュラーな UNIXエディター pico, vi, emacs などの利用も含まれています。これらのエディタを使うこともできますし、あなたのPC上で編集したファイルをバーチャルサーバーへアップロードすることもできます。
HTMLに関するチュートリアルやドキュメントはオンラインや書籍などでたくさん提供されています。 下にそれらの一部を紹介します。
HTML エディタはウエブページをすばやく作ることができます。 もちろん、このようなエディタを使うことなく単なるテキストエディタを使ってウエブページを作ることもできます。
下に HTMLエディタやツールの一部を紹介します。
コモン・ゲートウェイ・インターフェース(CGI)は、あなたのバーチャルサーバーを拡張するのに役立ちます。 CGIはウェブでより複雑な処理を行なうために
httpプロトコルとサーバーサイドのプログラムのゲートウエイを定義した仕様です。 通常、このCGIを利用したプログラムやスクリプトをサーバー側に作成して
クライアントとの間にはこのCGIを利用するHTMLドキュメントを用意します。
CGIについて詳しく解説するには非常に膨大な時間と文書が必要です。 これらに関するドキュメントへのリンクを以下に挙げます。
また、次のセクション以降でいくつかの例を挙げて解説します。
下のようなプログラミング言語を使ってあなた自身がCGIを書くこともできます:
- C/C++
- sh (borne shell)
- csh
- perl
あなたがCGIプログラムを書くときログインするホーム・ディレクトリ(/home/<あなたのログイン名> /)がバーチャルサーバーのルート・ディレクトリになることに充分注意してください。
すべてのパスの指定を相対パスで書くのも良いでしょう。 また、virtualというコマンドを使ってシェル上からバーチャルサーバーをシュミレートしてCGIプログラムや
スクリプトのデバッグを行なうこともできます。
- mercury: {1} % virtual mycgi arg1 arg2 arg3
この例でプログラム mycgiは、バーチャルサーバー環境の中で引数 arg1,arg2,arg3 が与えられて動きます。
イメージマップとはクライアントがブラウザ上から画像の座標をクリックすることで クリックした座標に応じて異なるHTMLドキュメントへリダイレクトする機能です。
現在ではクライアントサイドで実現するのが主流でサーバーサイドクリッカブルマップはあまり使われなくなってきています。
サーバーサイドクリッカブルマップは次の様にして作成します:
- GIFイメージフォーマットでクリッカブルマップで利用したい画像を作成します。
- イメージマップCGIとマップファイル(下の例では "my_mapfile")にリンクしたISMAP属性を持ったIMGタグに作成した画像ファイル名を書いたHTMLドキュメントを作成します:
<A HREF="http://some.site.com/cgi-bin/imagemap/my_mapfile">
<IMG SRC="image.gif" ISMAP>
</A>
- マップファイル(9)へのフルパス名を書いた imagemap.conf を、あなたの www/confデレクトリに作成します。
例:
my_mapfile: /usr/local/etc/httpd/htdocs/my_mapfile.map
imagemap.conf の中で行を追加することで、別のマップファイルを定義追加することができます。例:
my_mapfile: /usr/local/etc/httpd/htdocs/my_mapfile.map
my_2ndmap: /usr/local/etc/httpd/htdocs/my_2ndmap.map
- マップファイルをあなたの usr/local/etc/httpd/htdocs (または www/htdocs)デレクトリに配置してください。
マップ・ファイルを生成することは難しくはありません。しかし、イメージのX,Y座標を与える何らかのグラフィック・エディタを必要とします。
そういったグラフィック・エディタには次のようなものがあります:
Adobe Photoshop 多くの販売店で売られている商用ソフトウエア
Paintshop Pro 良く考えられたシェアウエア ftp://gatekeeper.dec.com/pub/micro/msdos/win3/desktop/psp30.zip
Mapedit マップファイルを作成することの出来るフリーウエア ftp://sunsite.unc.edu/pub/packages/infosystems/WWW/tools/mapedit
(詳しい説明は http://sunsite.unc.edu/boutell/mapedit/mapedit.html
を見てください。)
一般的なマップファイルへは次のような形式で登録します:
method URL x1,y1 x2,y2 ... xn yn
|