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 サイトを設定するためのロードマップ

複数のストアを設定するには、次のタスクを実行します。

手順1:管理画面でweb サイト、ストアビュー、ストアビューを作成する

管理者で複数のweb サイト、ストア、ストアビューを設定するを参照してください。

手順2:Apache仮想ホストの作成

この節では、仮想ホストでApache サーバー変数SetEnvIfを使用してMAGE_RUN_TYPEMAGE_RUN_CODEの値を設定する方法について説明します。

SetEnvIfの詳細については、次を参照してください。

Apache仮想ホストを作成するには:

  1. root権限を持つユーザーとして、仮想ホスト設定ファイルをテキストエディターで開きます。

    例えば、/etc/httpd/conf/httpd.confを開きます

  2. <VirtualHost *:80>で始まるセクションを探します。

  3. 既存の仮想ホストの後に次の仮想ホストを作成します。

    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>
    
  4. 変更をhttpd.confに保存して、テキストエディターを終了します。

  5. Apacheを再起動します。

    • CentOS: service httpd restart
    • Ubuntu: service apache2 restart

サイトの確認

ストアのURLにDNSを設定していない限り、hosts ファイルのホストに静的ルートを追加する必要があります。

  1. オペレーティング システム hosts ファイルを探します。

  2. 静的ルートを次の形式で追加します。

    code language-conf
    <ip-address> french.mysite.mg
    <ip-address> german.mysite.mg
    
  3. ブラウザーで次のいずれかのURLに移動します。

    code language-http
    http://mysite.mg/admin
    http://french.mysite.mg/frenchstoreview
    http://german.mysite.mg/germanstoreview
    
INFO
  • ホスト環境に複数のweb サイトをデプロイするには、追加のタスクが必要になる場合があります。詳しくは、ホスティングプロバイダーを確認してください。
  • クラウドインフラストラクチャ上にAdobe Commerceを設定するには、追加のタスクが必要です。クラウドインフラストラクチャ上のCommerce ガイド​の複数のクラウドウェブサイトまたはストアの設定を参照してください。

トラブルシューティング

  • フランス語とドイツ語のサイトで404が返され、管理者が読み込まれる場合は、手順6: ストア コードをベース URLに追加してください。
  • すべてのURLが404を返す場合は、必ずweb サーバーを再起動してください。
  • 管理者が正しく機能しない場合は、仮想ホストを適切に設定してください。
recommendation-more-help
commerce-operations-help-configuration