複数の Web サイトをホストするように Apache と Nginx を構成する方法を学びましょう。
クラウド サーバーでサイトをホスティングすると、共有ホスティングに比べて柔軟性が高くなります。 好きなようにインストールし、スケールアップまたはスケールダウンして、パフォーマンスとコストを最適化するように構成できます。
複数のビジネス サイトを実行していて、それらを個別にホストしたくない場合は、Web サーバーで Virtual Server を利用できます。 このシナリオを見てみましょう。
次の 2 つのサイトを 1 つのクラウド VM に向けたいと思います。
実装する前に、それがどのように機能するかを理解しましょう。
単一の Web サーバー インスタンスに複数の Web サイトを持つという概念は、仮想サーバーと呼ばれます。 これは、URL とともに構成ファイルで定義されます。 定義された URL に対して要求が行われると、Web サーバーはそれぞれのドキュメント ルートからのトラフィックを処理します。
複数のドメインをホストするように Apache で仮想ホストを構成する
- Apache HTTP サーバーにログインします。
- apache conf の場所に移動します。 (デフォルトのインストールでは、ここに /etc/httpd/conf/httpd.conf があります)
- httpd.conf ファイルのバックアップを取る
- 以下のような VirtualHost コンテナーを作成します。これは 2 つのドメインに対して行ったものです。
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /opt/htdocs/lab ServerName lab.etechjp.com.com ErrorLog logs/lab.etechjp.com.com-error_log CustomLog logs/lab.etechjp.com.com-access_log common </VirtualHost> <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /opt/htdocs/gf-dev ServerName gf.dev ErrorLog logs/gf.dev-error_log CustomLog logs/gf.dev-access_log common </VirtualHost>
注: 要件に基づいて、ServerAdmin、DocumentRoot、ServerName、ErrorLog、CustomLog の値を変更します。
- Apache HTTP を再起動し、両方の URL をテストします。
複数のドメインをホストするように Nginx で仮想ホストを構成する
- Nginxサーバーにログイン
- Nginx をインストールした場所に移動します。 (デフォルトの場所 – ここに /etc/nginx/ があります)
これを実現するには、複数の方法があります。 nginx.conf ファイルまたはカスタム ファイルがあれば変更できます。 conf.d フォルダーの下に custom.conf を作成することもできます。 自分に合ったものを選択し、既存のファイルを変更する場合はバックアップを取ってください。
- 以下に示すように、両方の URL のサーバー ブロックを作成します。
server { listen 80; root /opt/htdocs/lab; index index.html index.htm; server_name lab.etechjp.com.com; location / { try_files $uri $uri/ =404; } } server { listen 80; root /opt/htdocs/gf-dev; index index.html index.htm; server_name gf.dev; location / { try_files $uri $uri/ =404; } }
注: 要件に基づいて、root、server_name の値を変更します。
- Nginx を再起動し、両方の URL をテストします
URL の DNS レコードを更新して、サーバー IP にマッピングすることを忘れないでください。 完了すると、上記の構成によって提供される URL にアクセスできるようになります。
結論
これは、Apache や Nginx のような単一の Web サーバー インスタンスで複数のドメインをホストするためのクイック ガイドでした。 Web サイトが公開されたら、セキュリティの脆弱性に対してテストすることを忘れないでください。
記事を読んでよかったですか? 世界と共有してみませんか?