ホームページ >バックエンド開発 >PHPチュートリアル >Apache を使用した仮想ホスト サービスの実装_PHP チュートリアル

Apache を使用した仮想ホスト サービスの実装_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:12:22864ブラウズ

バーチャルホストサービスとは何ですか? いわゆるバーチャルホストサービスとは、1台のマシンを複数のWEBサーバーとして仮想化することを指します。たとえば、ある企業がホスティング サービスの提供に携わりたいと考えており、他の企業に WEB サービスを提供しているとします。それでは、企業ごとに物理サーバーを用意するのではなく、大規模で強力なサーバーを使用し、仮想ホストを使用して複数の企業に WEB サービスを提供することになりますが、すべての WEB サービスはこのサーバーによって提供されます。訪問者が別のサーバーで WEB サービスを受けているように見えます。
具体的には、仮想ホスティング サービスを使用して、2 つの異なる企業 www.company1.com と www.company2.com のホームページ コンテンツを同じホストに保存できます。訪問者は、会社のドメイン名を入力するだけで、希望するホームページのコンテンツにアクセスできます。
Apache を使用して仮想ホスト サービスを設定するには、通常、IP アドレスベースの仮想ホストと名前ベースの仮想ホストの 2 つのソリューションを使用できます。以下にそれぞれの実装方法を紹介します。これにより、誰もが特定のアプリケーションに最適な実装方法を選択できるようになります。
IPアドレスに基づいて仮想ホストサービスを設定して実装する

実装の前提条件

この方法では、マシン上にIPエイリアスを設定する必要があります。つまり、複数の
IPアドレスをマシンのネットワークカードにバインドして、複数のサービスを提供する必要があります。仮想ホスト 。また、この関数を使用するには、LINUX カーネルが IP エイリアスの設定をサポートしていることも確認する必要があります。サポートしていない場合は、カーネルを再コンパイルする必要があります。
以下は、参考のために 2 つの仮想ホストを使用したサービスのセットアップです。
2.構成手順
仮想ホスト サービスの実装に使用するマシンが最初にそれ自体に WEB サービスを提供し、次に新しい会社 www.company1.com に仮想ホスト サービスを提供すると仮定します。
IP アドレスの計画: 仮想ホストの新しい IP アドレスを申請します。 (ローカルIPアドレスは202.101.2.1とする)

Www.company1.com 202.101.2.2

2) ISPに対応するドメイン名解決作業を行わせます。
3) ネットワーク カードの IP エイリアスを設定します:
/sbin/ifconfig eth0:0 202.101.2.2 netmask 255.255.255.0
4) "/etc/httpd/conf/httpd.conf" をリセットし、次を追加します:

ServerAdmin webmaster@yourdomain.com
DocumentRoot /home/httpd/www.company1.com
ServerName www.company1.com
ErrorLog /var/log/httpd/www.company1.com/error.log

5) 対応するディレクトリを作成します。
mkdir /home/httpd/www.company1.com
mkdir /var/log/httpd/www.company1.com/error.log

6) 対応するホームページコンテンツを対応するディレクトリに保存します。
3.欠点
この仮想ホストの実装方法には重大な欠点があります。つまり、仮想ホストを追加するたびに IP アドレスを追加する必要があるということです。 IP アドレス空間はすでに非常に狭いため、これほど多くの IP アドレスを取得することは通常は不可能です。これはある意味、IP アドレスの無駄でもあります。

http://www.bkjia.com/PHPjc/629445.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/629445.html技術記事バーチャルホストサービスとは何ですか? いわゆるバーチャルホストサービスとは、1台のマシンを複数のWEBサーバーとして仮想化することを指します。たとえば、ある企業が次のようなホスティング サービスの提供に従事したいと考えています。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。