Simple Application Server 上でビジネスごとに複数の独立したウェブサイトをデプロイする場合、Apache 設定ファイルを変更することで、複数のドメイン名を異なるウェブサイトに指定できます。これにより、サーバーリソースを最大限に活用し、管理と運用の効率を向上させることができます。
前提条件
Linux、Apache、MySQL、PHP (LAMP) アプリケーションイメージから Simple Application Server が作成されていること。詳細については、「LAMP 開発環境の構築」をご参照ください。
複数のドメイン名が登録されていること。Alibaba Cloud でドメイン名を登録する方法の詳細については、「ジェネリックドメイン名の登録」をご参照ください。
事前準備
この例では、以下のリソースを使用します:
サーバー: LAMP 7.4 アプリケーションイメージから作成された Simple Application Server。
2 つのテストウェブサイト:
test01およびtest02。2 つのテストドメイン名:
test01.example.comおよびtest02.example.com。
このトピックで説明する設定を完了すると、以下の操作を実行できます:
test01.example.comを使用してtest01ウェブサイトにアクセスする。test02.example.comを使用してtest02ウェブサイトにアクセスする。
実際の操作では、これらのサンプルリソースを独自のリソースに置き換える必要があります。
ステップ 1: テストウェブサイトの作成
複数のウェブサイトのコードがすでにサーバー上のウェブサイトのルートディレクトリに保存されている場合は、このステップをスキップしてください。
LAMP サーバーに接続します。
詳細については、「Linux インスタンスへの接続」をご参照ください。
-
次のコマンドを実行して、ウェブサイトのルートディレクトリに移動します。
ウェブサイトのルートディレクトリは、Simple Application Server で使用される LAMP アプリケーションイメージの LAMP バージョンによって異なります。
サーバーで LAMP 7.4 アプリケーションイメージを使用する場合、ウェブサイトのルートディレクトリは /data/wwwroot/example です。
サーバーで LAMP 6.1.0 アプリケーションイメージを使用する場合、ウェブサイトのルートディレクトリは /home/www/htdocs です。
この例では、LAMP 7.4 アプリケーションイメージを使用します。したがって、次のコマンドを実行してウェブサイトのルートディレクトリに移動します:
cd /data/wwwroot/example 次のコマンドを順に実行して、2 つのサブディレクトリを作成します。
サブディレクトリは、ウェブサイトのコードを保存するために使用されます。
sudo mkdir test01sudo mkdir test02次のコマンドを実行して test01 サブディレクトリに移動します。test01 サブディレクトリに index.html という名前のファイルを作成し、編集します。
test01 サブディレクトリに移動します。
cd /data/wwwroot/example/test01/次のコマンドを実行して
index.htmlファイルを作成します:sudo vi index.htmlIキーを押して編集モードに入り、次のテスト情報をファイルに追加します:Test page 01Escキーを押し、:wqと入力してから Enter キーを押して、ファイルを保存して閉じます。
test02サブディレクトリに移動し、index.htmlファイルを作成して編集します。次のコマンドを実行して
test02サブディレクトリに移動します:cd /data/wwwroot/example/test02/次のコマンドを実行して
index.htmlファイルを作成します:sudo vi index.htmlIキーを押して編集モードに入り、次のテスト情報をファイルに追加します:Test page 02Escキーを押し、:wqと入力してから Enter キーを押して、ファイルを保存して閉じます。
ステップ 2: Apache 設定ファイルの変更
-
httpd.conf 設定ファイルを変更します。
次のコマンドを実行して httpd.conf ファイルを開きます:
sudo vi /etc/httpd/conf/httpd.conf-
I キーを押して編集モードに入り、設定を変更します。
次の設定を見つけます:
# Virtual hosts #Include conf/extra/httpd-vhosts.conf#Include conf/extra/httpd-vhosts.conf行の先頭にある#を削除します。この行は次のようになります: Include conf/extra/httpd-vhosts.conf
Esc キーを押し、
:wqと入力してから Enter キーを押して、ファイルを保存して閉じます。
-
vhosts.conf 設定ファイルを変更します。
次のコマンドを実行して、vhosts.conf 設定ファイルを開きます:
sudo vi /etc/httpd/conf.d/vhost.conf-
Iキーを押して編集モードに入り、設定を変更します。ファイル内の
<VirtualHost *:80></VirtualHost>タグで囲まれたデフォルト設定をコメントアウトし、複数のドメイン名を手動で追加する必要があります。-
デフォルトの設定情報をコメントアウトします。次のコードは、デフォルトの Apache バーチャルホスト設定ファイル (httpd-vhosts.conf) のコメントアウトされた内容です:
#<VirtualHost *:80> # ServerAdmin webmaster@dummy-host.example.com # DocumentRoot "/usr/local/apache/docs/dummy-host.example.com" # ServerName dummy-host.example.com # ServerAlias www.dummy-host.example.com # ErrorLog "logs/dummy-host.example.com-error_log" # CustomLog "logs/dummy-host.example.com-access_log" common #</VirtualHost> #<VirtualHost *:80> # ServerAdmin webmaster@dummy-host2.example.com # DocumentRoot "/usr/local/apache/docs/dummy-host2.example.com" # ServerName dummy-host2.example.com # ErrorLog "logs/dummy-host2.example.com-error_log" # CustomLog "logs/dummy-host2.example.com-access_log" common #</VirtualHost> -
ファイルの末尾に次の設定を追加します:
<VirtualHost *:80> DocumentRoot "/data/wwwroot/example/test01" ServerName test01.example.com </VirtualHost> <VirtualHost *:80> DocumentRoot "/data/wwwroot/example/test02" ServerName test02.example.com </VirtualHost>DocumentRoot: ウェブサイトのディレクトリ。このパラメーターはDocumentRoot "<ウェブサイトのディレクトリ>"のフォーマットで指定します。ServerName: ドメイン名。このパラメーターはServerName <ドメイン名>のフォーマットで指定します。
-
Esc キーを押し、:wq と入力して Enter キーを押し、ファイルを保存して閉じます。
次のコマンドを実行して Apache を再起動します。
sudo systemctl restart httpdステップ 3:ドメイン名のバインド
この例で使用する 2 つのテストドメイン名については、ご利用の Windows コンピューターの hosts ファイルに、これらのドメイン名と LAMP サーバーのパブリック IP アドレスとのマッピングを追加する必要があります。
ウェブサイトの設定に実際のドメイン名を使用する場合は、このステップをスキップしてください。複数のドメイン名を LAMP サーバーにバインドする必要があります。詳細については、「ドメイン名の追加と解決」をご参照ください。ドメイン名がバインドされると、そのドメイン名を使用して対応するウェブサイトにアクセスできます。
C:\Windows\System32\drivers\etcディレクトリに移動します。バックアップのために
hostsファイルをコピーします。テスト完了後に hosts ファイルを初期状態に復元できるように、hosts - copy ファイルを保持しておきます。
hostsファイルを変更します。hosts ファイルの末尾に次の内容を追加します。
<Public IP address of the simple application server> test01.example.com <Public IP address of the simple application server> test02.example.comWindows のデスクトップに戻り、コマンドプロンプトを管理者として実行します。
コマンドプロンプトウィンドウで次のコマンドを実行して、
hostsファイルの新しい設定をすぐに有効にします。ipconfig /flushdns
手順4:紐付けられたドメイン名でのウェブサイトへのアクセス
Windows コンピューターのブラウザを使用して、テストウェブサイトにアクセスします。
-
test01.example.comにアクセスします。ページに Test page 01 が表示されます。 -
test02.example.comにアクセスします。ページにTest page 02が表示されます。
参考資料
ドメイン名に HTTPS アクセスを設定することで、データ伝送プロトコルを HTTP から HTTPS へ低コストで変換できます。これにより、ウェブサイトの認証と暗号化データ伝送が実装され、伝送中のデータ改ざんや情報漏洩を防止します。詳細については、以下のトピックをご参照ください: