1

次の構造を持つ別の Web サーバーにマルチストアを移動しました。

mystore.com --> Magento Multistore installation
flowers.website.com --> symlinks to mystore.com folder
cars.website.com --> symlinks to mystore.com folder

新しいセットアップはまったく同じです (ドメインとフォルダー名が異なるだけです)。

しかし、新しい URL にアクセスすると、mynewstore.com常に古いドメインにリダイレクトされます。私がすでにやった/試したこと:

  • core_config_data の base_urls を変更しました
  • var + 777 パーミッションをクリアしました
  • セッションテーブルをクリアしました
  • 再インデックス
  • リダイレクトの htaccess を確認しました
  • index.phpを確認しました
  • リダイレクト用にさまざまなストアのテンプレートを確認しました

私の 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';
$mageRunCode = 'mystore';
$mageRunType = 'website';
Mage::run($mageRunCode, $mageRunType);

別のストア ID (「花」など)に変更する場合は$mageRunCode、古い (!!) フラワー ストア (古い花の URL にリダイレクト) が読み込まれます。

コードを見ずに問題を解決するのは難しいと思いますが、ここで試してみるしかありません。ヒントをいただければ幸いです。

4

3 に答える 3

1

私はかつて同じ問題を抱えていましたが、何が問題なのかを理解するのにほぼ丸一日かかりました. 私はマルチストアを持っていましたが、試したすべての URL ですべてのストアが 404 ページを返しました。MAGE_RUN_TYPE最終的に解決策はからに変更するwebsiteことでしたstore

于 2015-02-11T15:47:18.183 に答える
0

index.php ヘッダーにこれを追加します。

$_SERVER['MAGE_RUN_CODE'] = $_SERVER['REDIRECT_MAGE_RUN_CODE'];
$_SERVER['MAGE_RUN_TYPE'] = $_SERVER['REDIRECT_MAGE_RUN_TYPE'];
于 2015-01-20T14:34:05.720 に答える
0

あなたが持っているように、あなたの index.php ファイルは、次の行のためにMAGE_RUN_CODEandMAGE_RUN_TYPE変数をオーバーライドしています:

$mageRunCode = 'mystore';
$mageRunType = 'website';

これらは初期定義の後に呼び出されるため、 および にリセットされmystoreていwebsiteます。

これらの行を削除して、変数がMage::run()関数に正しく渡されているかどうかを確認してください。


777 への CHMODing に関する重要なお知らせ

ファイルシステムへのパブリックアクセスを許可する可能性があるため、これは潜在的に危険なことです。このような理由から、本番サイトに777パーミッション セットを設定することは決してありません。

フォルダーを 755 に、ファイルを 644 に設定します。これを行うには、シェル接続を開き、cdMagento ルート ディレクトリに接続します。次のコマンドを実行します。

chmod -R 755 *; find -type f -print0|xargs -0 chmod 644

正しく実行すると、Magento インストール内のすべてのファイルが正しい権限に設定されます。

于 2013-10-22T22:06:57.020 に答える