0

最初の Magento ストア (CentOS および Apache 上) を立ち上げたばかりで、セットアップ サブドメインから切り替えました - http://prelive.mydomain.com (すべてが正常に機能し、URL の書き換えが有効で機能しています) -ライブサブドメインhttp://www.mydomain.com、基本的には次のことを行うだけです:

  1. 管理インターフェースからキャッシュをクリアする
  2. データベース内の安全なベース URL と安全でないベース URL の更新
  3. サイトのファイル システム全体を /var/www/html/prelive から /var/www/html/www に移動します (コピーしようとしましたが、あらゆる種類のアクセス許可の問題が発生しましたが、これは後でわかります!)
  4. var/resource_config.json のメディア ベース パスを手動で編集する
  5. 次のように仮想ホストを更新します。

    <VirtualHost *:80>
        DocumentRoot /var/www/html/www
        ServerName www.mydomain.co.uk
        ServerAlias www.mydomain.co.uk
        ErrorLog logs/www.mydomain.co.uk-error_log
    </VirtualHost>
    
  6. ベースの .htaccess ファイルを次のように編集します ()

    SetEnvIf Host www\.mydomain.co.uk MAGE_RUN_CODE=angling_r_en
    SetEnvIf Host www\.mydomain.co.uk MAGE_RUN_TYPE=store
    SetEnvIf Host ^mydomain.co.uk MAGE_RUN_CODE=angling_r_en
    SetEnvIf Host ^.mydomain.co.uk MAGE_RUN_TYPE=store
    

そして、それはほとんど機能します...しかし、URLの書き換えは壊れています。http://www.mydomain.comでサイトを表示できますが、URL を具体的に変更しない限り、サブページに移動すると 404 (例: http://www.mydomain.com/path/to/product.html ) になります。このhttp://www.mydomain.com/index.php/path/to/product.htmlまたはhttp://www.mydomain.com/index.php/adminのようにindex.phpを介してポイントします

参考までに、 .htaccess にもあります(サブドメインの切り替え中は変更されません):

RewriteBase /

RewriteRule .* index.php [L]

私が忘れたことについて何か考えはありますか?

どうもありがとうベン

4

2 に答える 2

1

わかりました-問題はMagentoではなく、ずっとサーバーにありました...

httpd.conf と ssl.conf の両方の両方の VirtualHost コンテナーでこれが必要だったため、基本的に書き換えは機能しませんでした。

<Directory /var/www/html/www>
        AllowOverride All
</Directory>

私がまだ理解していないのは、新しい場所ではなく、古い場所(間違いなくこれがなかった)でどのように機能したかです...しかし、「Webサーバーの書き換えを使用」をオンにして、以前と同じように機能しますSystem > Configuration > Web でオンにし、mod_rewrite によって index.php を介して書き換えられる「クリーンな」URL を作成します。

于 2013-04-06T19:47:37.277 に答える
1

ほとんどの場合、新しい URL の変更を組み込むために、カタログ URL の書き換えを再インデックス化する必要があります。System > Index ManagementCatalog URL Rewritesを参照して再インデックス化します。

于 2013-04-04T11:16:35.210 に答える