Apache設定ツールを使用して、仮想ホストを設定できます。仮想ホストを用いると、異なるIPアドレス、異なるホスト名または同じマシン上の異なるポートを使って、異なるサーバーを稼動できます。たとえば、仮想サーバーを使用しているApacheサーバーで、http://www.your_domain.comやhttp://www.your_second_domain.comといったWebサイトを実行できます。このオプションは、デフォルト仮想ホストとIPベースの仮想ホストの場合は、<VirtualHost>ディレクティブに相当します。名前ベースの仮想ホストの場合は、<NameVirtualHost>ディレクティブに相当します。
仮想ホストのApacheディレクティブ群は、特定の仮想ホストだけに適用されます。ディレクティブが[Edit Default Settings]ボタンを使用してサーバー全体に対して設定されているが、仮想ホスト設定値内に定義されていない場合は、デフォルト設定値が使用されます。たとえば、[Main]タブの[Webmaster email address]を定義することはできますが、各仮想ホストに個別のeメールアドレスを定義することはできません。
Apache設定ツールには、Figure 11-8に示すデフォルト仮想ホストが組み込まれています。デフォルト仮想ホストについて詳しくは、the section called Default Virtual Hostを参照してください。
マシンやWebサイトhttp://www.apache.org/docs/vhosts/上のApacheドキュメントには、仮想ホストに関する詳しい情報が記載されています。
仮想ホストを追加するには、[Virtual Hosts]タブをクリックし、次に[Add]ボタンをクリックします。Figure 11-9に示すウィンドウが開きます。リスト内の対象の仮想ホストを選択し、[Edit]ボタンをクリックすると、仮想ホストを編集することもできます。
[General Options]設定値は、設定中の仮想ホストだけに適用されます。[Virtual Host Name]テキストエリアに仮想ホストの名前を設定します。この名前は、Apache設定ツールが仮想ホストを区別するために使用します。
[Document Root Directory]の値を、仮想ホストのrootドキュメント(index.htmlなど)を含むディレクトリに設定します。このオプションは、VirtualHostディレクティブ内のDocumentRootディレクティブに相当します。
[Webmaster email address]は、VirtualHostディレクティブ内のServerAdminディレクティブに相当します。エラーページのフッタにeメールアドレスを表示するように選択した場合は、このeメールアドレスが使用されます。
[Host Information]セクションでは、[Default Virtual Host]、[IP based Virtual Host]、[Name based Virtual Host]のいずれかを選択します。
[Default Virtual Host]を選択すると、Figure 11-10が表示されます。設定できるデフォルト仮想ホストは1つだけです。要求されたIPアドレスが別の仮想ホスト内に明示的に一覧されていない場合に、デフォルト仮想ホストの設定値が使用されます。デフォルト仮想ホストが定義されていない場合は、メインのサーバーの設定値が使用されます。
[IP based Virtual Host]を選択すると、Figure 11-11が表示されます。このウィンドウでは、サーバーのIPアドレスに基づいて<VirtualHost>ディレクティブを設定できます。[IP address]フィールドでサーバーのIPアドレスを指定します。複数のIPアドレスを指定するには、各IPアドレスをスペースで区切ります。ポートを指定するときは、IP Address:Port構文を使います。:*を使用すると、そのIPアドレスのすべてのポートを設定できます。[Server Host Name]フィールドに仮想ホストのホスト名を指定します。
[Name based Virtual Host]を選択すると、Figure 11-12が表示されます。このウィンドウでは、サーバーのホスト名に基づいてNameVirtualHostディレクティブを設定できます。[IP address]フィールドにサーバーのIPアドレスを指定します。複数のIPアドレスを指定するには、各IPアドレスをスペースで区切ります。ポートを指定するときは、IP Address:Port構文を使います。:*を使用すると、そのIPアドレスのすべてのポートを設定できます。[Server Host Name]フィールドに仮想ホストのホスト名を指定します。[Aliases]セクションで、[Add]ボタンをクリックし、ホスト名の別名を追加します。ここで別名を追加すると、NameVirtualHostディレクティブ内にServerAliasディレクティブが追加されます。
注意 | |
---|---|
SSLハンドシェイクは、該当する名前ベースの仮想ホストを識別するHTTP要求の前(ブラウザがセキュアWebサーバーの証明書を受け取ったとき)に実行されるため、名前ベースの仮想ホストとSSLをいっしょに使用することはできません。名前ベースの仮想ホストを使用する場合は、セキュアでないWebサーバーしか稼動できません。 |
ApacheサーバーにSSLサポートが設定されていないと、Apacheサーバーとクライアント間の通信は暗号化されません。これは、ユーザ情報や機密情報を持たないWebサイトには適しています。たとえば、ソースが公開されたソフトウェアやドキュメントを配信するオープンなWebサイトには、セキュア通信は必要ありません。ただし、クレジットカード情報が必要なeコマースWebサイトでは、Apache SSLサポートを使用して、通信を暗号化する必要があります。Apache SSLサポートを有効にすると、mod_ssl セキュリティモジュールを使用できるようになります。Apache設定ツールを通じてこれを有効にするには、[Main]タブのAvailable Addressesに一覧されたアドレスを使い、ポート443を介してアクセスできなければなりません。詳細については、the section called 基本設定値を参照してください。次に、[Virtual Hosts]タブで仮想ホスト名を選択し、[Edit]ボタンをクリックします。左側のメニューから[SSL]を選択し、Figure 11-13に示すように[Enable SSL Support]オプションをチェックします。[SSL Configuration]セクションは、仮のデジタル証明書を使って事前設定されています。デジタル証明書は、セキュアWebサーバーの認証に使用され、クライアントWebブラウザに対してセキュアサーバーの身元を証明します。自分専用のデジタル証明書を購入する必要があります。Webサイトで、Red Hat Linuxに組み込まれている仮のデジタル証明書を使わないでください。CAが承認済みのデジタル証明書を購入する方法について詳しくは、オフィシャル Red Hat Linux リファレンスガイド の「Apache関連のリファレンス」の部分を参照してください。
仮想ホストの[Site Configuration]、[Environment Variables]、[Directories]といったオプションは、これらのオプションが設定中の個々の仮想ホストに設定される点を除けば、[Edit Default Settings]ボタンをクリックしたときに設定したディレクティブと同じです。これらのオプションについて詳しくは、the section called デフォルト設定値を参照してください。