仮想ホスティングは、単一のウェブサーバーで複数のウェブサイトをホストする方法です。ウェブサーバーは、Apache HTTP、Microsoft IIS、Lighttpdなどのいずれかです。ウェブサーバーには、名前ベースとIPベースの2種類の仮想ホスティングがあります。
名前ベースの仮想ホスティングでは、単一のIPアドレスで複数のウェブサイトを構成できます。IPベースでは、単一のIPアドレスで1つのウェブサイトのみを構成できます。 Apacheは、名前ベースとIPベースの両方の仮想ホスティングをサポートしています。仮想ホストは仮想ホストコンテナを使用して構成する必要があります。一般的な仮想ホストコンテナは次のようになります。
ServerAdmin [email protected]
DocumentRoot /www/docs/dummy-host.example.com
ServerNameダミー-host.example.com
ErrorLogログ/dummy-host.example.com-error_log
CustomLogログ/dummy-host.example.com-access_logcommon
名前ベースの仮想ホスト:
名前ベースの仮想ホストは、クライアントから要求されたドメイン名を使用して、サービスを提供する正しい仮想ホストを識別します。各ホスト名を対応するIPアドレスにマップするようにDNSサーバーをセットアップしてから、ホスト名を認識するようにApacheサーバーを構成する必要があります。複数のドメインをホストする前に、デフォルトの仮想ホストを設定する必要があります。デフォルトの仮想ホストは、サーバー上でまだ構成されていないか、構成されていないドメインを要求したクライアントにページを提供します(DNSサーバーによる誤ったポインティングのため)。名前ベースの仮想ホスティングをセットアップするようにDNSサーバーを構成します。
NameVirtualHost www.example1.com
ServerAdmin [email protected]
ServerName www.example1.com
DocumentRoot / var / www / example1
ErrorLogログ/example1-error_log
CustomLogログ/example1-access_logcommon
ServerAdmin [email protected]
DocumentRoot / var / www / example2
ServerName www.example2.com
ErrorLog logs / example2.com-error_log
CustomLogログ/example2.com-access_logcommon
クライアントがWebサーバーからwww.example1.comまたはwww.example2.comを要求した場合、クライアントはホームページを受信します。クライアントがwww.example1.comとwww.example2.com以外を要求した場合、クライアントはデフォルトの仮想ホストのホームページを受け取ります。 www.example1.com。名前ベースの仮想では、構成を確認するためにDNSサーバーまたはホストエントリのいずれかが必要です。
IPベースの仮想ホスト:
IPベースの仮想ホストは、クライアントから要求されたIPアドレスを使用して、提供する正しい仮想ホストを識別します。そのため、仮想ホストごとに個別のIPアドレスを用意する必要があります。
でホスト名の代わりにIPアドレスを使用します
ServerAdmin [email protected]
ServerName www.example1.com
DocumentRoot / var / www / example1
ErrorLogログ/example1-error_log
CustomLogログ/example1-access_logcommon
ServerAdmin [email protected]
DocumentRoot / var / www / example2
ServerName www.example2.com
ErrorLog logs / example2.com-error_log
CustomLogログ/example2.com-access_logcommon
上記から、異なるIPアドレスで構成された各仮想ホストは、サーバーに複数のネットワークカードをインストールする必要があることがわかります。名前ベースの仮想ホストは、インターネットサーバーでWebコンテンツを提供するために最も広く使用されています。