Apacheを使用した複数のweb サイトの設定
私たちは、次のことを想定しています。
必要に応じて、web サイトまたはストアビュー用の既存のindex.php エントリポイントスクリプトをコピーし、次のように追加します。
-
開発用マシン(ラップトップ、仮想マシンなど)で作業している
ホスト環境に複数のweb サイトをデプロイするには、追加のタスクが必要になる場合があります。詳しくは、ホスティングプロバイダーを確認してください。
クラウドインフラストラクチャでAdobe Commerceを設定するには、追加のタスクが必要です。 このトピックで説明したタスクを完了したら、Commerce on Cloud Infrastructure ガイドの「複数のweb サイトまたはストアを設定する」を参照してください。
-
Web サイトごとに1つの仮想ホストを使用します。仮想ホスト設定ファイルは
/etc/httpd/httpd.confです異なるオペレーティングシステム上のApacheの異なるバージョンは、仮想ホストを異なる方法で設定します。 仮想ホストの設定方法がわからない場合は、Apache ドキュメント またはネットワーク管理者に問い合わせてください。
-
Commerce ソフトウェアが
/var/www/html/magento2にインストールされています -
デフォルト以外に2つのWeb サイトがあります。
french.mysite.mg(web サイト コードfrenchおよびストアビューコードfr)german.mysite.mg(web サイト コードgermanおよびストアビューコードde)
Apacheを使用して複数のweb サイトを設定するためのロードマップ
複数のストアを設定するには、次のタスクを実行します。
- 管理画面でweb サイト、ストア、ストアビューを設定。
- Commerce web サイトごとにApache バーチャルホスト を1つ作成します。
手順1:管理画面でweb サイト、ストアビュー、ストアビューを作成する
管理者で複数のweb サイト、ストア、ストアビューを設定するを参照してください。
手順2:Apache仮想ホストの作成
この節では、仮想ホストでApache サーバー変数SetEnvIfを使用してMAGE_RUN_TYPEとMAGE_RUN_CODEの値を設定する方法について説明します。
SetEnvIfの詳細については、次を参照してください。
Apache仮想ホストを作成するには:
-
root権限を持つユーザーとして、仮想ホスト設定ファイルをテキストエディターで開きます。例えば、
/etc/httpd/conf/httpd.confを開きます -
<VirtualHost *:80>で始まるセクションを探します。 -
既存の仮想ホストの後に次の仮想ホストを作成します。
code language-conf <VirtualHost *:80> ServerName mysite.mg DocumentRoot /var/www/html/magento2/pub/ </VirtualHost> <VirtualHost *:80> ServerName french.mysite.mg DocumentRoot /var/www/html/magento2/pub/ SetEnv MAGE_RUN_CODE "french" SetEnv MAGE_RUN_TYPE "website" </VirtualHost> <VirtualHost *:80> ServerName german.mysite.mg DocumentRoot /var/www/html/magento2/pub/ SetEnv MAGE_RUN_CODE "german" SetEnv MAGE_RUN_TYPE "website" </VirtualHost> -
変更を
httpd.confに保存して、テキストエディターを終了します。 -
Apacheを再起動します。
- CentOS:
service httpd restart - Ubuntu:
service apache2 restart
- CentOS:
サイトの確認
ストアのURLにDNSを設定していない限り、hosts ファイルのホストに静的ルートを追加する必要があります。
-
オペレーティング システム
hostsファイルを探します。 -
静的ルートを次の形式で追加します。
code language-conf <ip-address> french.mysite.mg <ip-address> german.mysite.mg -
ブラウザーで次のいずれかのURLに移動します。
code language-http http://mysite.mg/admin http://french.mysite.mg/frenchstoreview http://german.mysite.mg/germanstoreview
- ホスト環境に複数のweb サイトをデプロイするには、追加のタスクが必要になる場合があります。詳しくは、ホスティングプロバイダーを確認してください。
- クラウドインフラストラクチャ上にAdobe Commerceを設定するには、追加のタスクが必要です。クラウドインフラストラクチャ上のCommerce ガイドの複数のクラウドウェブサイトまたはストアの設定を参照してください。
トラブルシューティング
- フランス語とドイツ語のサイトで404が返され、管理者が読み込まれる場合は、手順6: ストア コードをベース URLに追加してください。
- すべてのURLが404を返す場合は、必ずweb サーバーを再起動してください。
- 管理者が正しく機能しない場合は、仮想ホストを適切に設定してください。