Magento Multi-Store with Domain Alias-2番目のストアでの404エラー


7

マルチストア構成用にmagentoアプリを構成しようとしています。以下のmagentocommerceチュートリアルに従って、推奨される手順に従いました。2番目のストアのホームページで404エラーが発生し、構成が失敗している場所が見つかりません。以下は、実行した私の手順、使用したチュートリアル、および実行したトラブルシューティングの手順です。

どんな助けもいただければ幸いです!

実行した手順

  1. デフォルトのルートカテゴリの設定–
    同じカタログを使用したパッケージ-同じデフォルトのルートカテゴリを使用
    CATALOG> MANAGE PRODUCTS>
    Enabled Website = C *****-wholesale for products

  2. 新しいWebサイト、ストア、ストアビューを作成します。
    システム>管理ストア>
    Webサイト名= C *****-卸売
    コード=卸売
    店名=ディストリビューター
    ルートカテゴリ=パッケージ
    ストアビュー-ディストリビューター-英語
    コード= dist

  3. 卸売テーマのデザイン変更の作成
    SYSTEM> DESIGN> ADD DESIGN CHANGE>
    Website = C *****-wholesale
    Store = Distributors
    Store View = Distributors-English
    Design = default / modern

  4. スコープの変更されたデザインテンプレート-C *****-wholesale
    SYSTEM> CONFIGURATION>
    Current Config Scope:C *****-wholesale
    GENERAL> DESIGN>

    • 「デフォルトを使用」を無効化
    • テーマ>テンプレート=モダン
  5. ストアビューのホームページのインスタンスを追加=ディストリビューター-英語
    CMS>
    ページ> ページタイトル=ホーム
    ストアビュー=ディストリビューター-英語

  6. ベースURLの変更-Mag Admin SYSTEM-
    > CONFIGURATION-> GENERAL- > WEB
    スコープの変更されたベースURL = C *****-wholesale
    http://dist.c ***** ment.com/
    https:// dist.c ***** ment.com/

  7. htaccessに環境ディレクティブを追加します:
    SetEnvIf Host www.dist.c ***** ment.com MAGE_RUN_CODE = wholesale
    SetEnvIf Host www.dist.c ***** ment.com MAGE_RUN_TYPE = website
    SetEnvIf Host ^ dist.c ** *** ment.com MAGE_RUN_CODE = wholesale
    SetEnvIf Host ^ dist.c ***** ment.com MAGE_RUN_TYPE = website

  8. サーバーとmagentoアプリをリセットします。

    • サーバーを再起動します
    • インデックスが再作成された
      システム>インデックス管理
    • キャッシュをクリア:
      SYSTEM> CACHE MANAGEMENT
    • 再コンパイルされた
      システム>ツール>コンパイル
    • 手動で削除されたキャッシュフォルダーvar / cache

使用したチュートリアル

magentocommerce.com/knowledge-base/entry/tutorial-multi-site-multi-domain-setup
magentocommerce.com/wiki/4_-_themes_and_template_customization/navigation/multiple-website-setup
magentocommerce.com/images/uploads/multistore_webinar-flv/ multistore_webinar-flv.html

トラブルシューティング

  1. Webサーバーの書き換えを使用する-無効にしても解決しませんでした。
    magento.stackexchange.com/questions/19382/magento-new-website-store-products-links-404-error
  2. ウェブサイト名とストア名に同じ名前を使用しないでください。
    lotusseedsdesign.com/blog/do-not-use-the-same-name-for-website-name-and-store-name

回答:


1

でデフォルトのホームページを設定してくださいAdmin -> System -> Configuration -> Design -> Default Pages -> CMS Home Page。構成スコープを各ストアビューに変更し、ホームページ用に作成したCMSページを選択します。

編集:

.htaccessの代わりにこのアプローチを試してください。

index.php

/* Store or website code */
$mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : '';

/* Run store or run website */
$mageRunType = isset($_SERVER['MAGE_RUN_TYPE']) ? $_SERVER['MAGE_RUN_TYPE'] : 'store';


// New code 

switch($_SERVER['HTTP_HOST']) {
    case 'www.dist.c*****ment.com ':
    case 'dist.c*****ment.com ':
        $mageRunCode = 'wholesale';
        $mageRunType = 'website';
    break;
}

// end of New code

Mage::run($mageRunCode, $mageRunType);

また、デフォルトのホームページを設定しました(上記の手順では省略しています)。Store View = Distributors-EnglishとWebsite = C *****-wholesaleの両方で、CMSホームページを変更し、そのオプションの「デフォルトを使用」を無効にしました。また、「デフォルトのWeb URL」を変更する必要がありますか、それとも「Use Website」のままにする必要がありますか?
Dana Laney、2015年

上記のステップ3で、ウェブサイト名を編集するのを忘れていました。あなたもそれをアスタリスクにしたいかもしれません。
seanbreeden、2015年

私の回答の編集を参照してください。
seanbreeden、2015年

上記の推奨ディレクティブを使用してhtaccessコードを修正しましたが、404エラーは解決しませんでした。1. htaccessに環境ディレクティブを追加します。-SetEnvIf Host www.dist.c ***** ment.com MAGE_RUN_CODE = dist-SetEnvIf Host www.dist.c ***** ment.com MAGE_RUN_TYPE = store-SetEnvIf Host ^ dist.c ***** ment.com MAGE_RUN_CODE = dist-SetEnvIf Host ^ dist.c ***** ment.com MAGE_RUN_TYPE = store
Dana Laney

index.php代わりに、条件を追加してみてください。.htaccess変数がインデックスに渡されていない可能性があります。編集された回答を参照してください。
seanbreeden、2015年

0

これを一時的にindex.phpに追加します

error_log('$mageRunCode '.$mageRunCode);
error_log('$mageRunType '.$mageRunType);

Mage::run($mageRunCode, strtolower($mageRunType));

期待どおりの設定が得られているかどうかを確認してください。


0

CMSホームページが設定されていない可能性があるという手がかりを提供してくれた@seanbreedanに感謝します。

CMSホームページを使用しない場合(つまり、ホームページがレイアウトファイルとテンプレートファイルから定義されている場合)でも、設定する必要があります。

ホームページが設定されAdmin->System->Configuration->Web->Default Pages(これは少し異なるパスであり、バージョン1.9でした)、マルチサイト設定のすべてのWebサイトにグローバルに適用されました。

次に、CMSのホームページを確認しましたAdmin->CMS->Pages。で指定されたホームページを検索しますDefault Pages。これは、私の場合は「ホーム」でした。

ページが有効になっていてStore View、ウェブサイトまたはストアで選択されていることを確認します。私の場合、404エラーが発生したストアでは有効になりませんでした。それが有効になると、サイトは機能しました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.