Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在Magento上使用apache重定向无法按预期工作_Php_Apache_Magento_Redirect - Fatal编程技术网

Php 在Magento上使用apache重定向无法按预期工作

Php 在Magento上使用apache重定向无法按预期工作,php,apache,magento,redirect,Php,Apache,Magento,Redirect,我有这样一个场景: 我需要知道如何在apache中实现从一个域到另一个域的重定向,同时考虑到在.com之后,两个站点上的页面将是相同的 用户请求示例:www.mydomain.com/product1 应重定向www.mydomain2.com/product1 应该是301重定向 我做了以下工作: Options +FollowSymLinks -MultiViews RewriteEngine On RewriteBase / # redirect all requests to www.

我有这样一个场景:

我需要知道如何在apache中实现从一个域到另一个域的重定向,同时考虑到在.com之后,两个站点上的页面将是相同的 用户请求示例:www.mydomain.com/product1 应重定向www.mydomain2.com/product1 应该是301重定向

我做了以下工作:

Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /

# redirect all requests to www.domain2.com domain
RewriteCond %{HTTP_HOST} =www.domain.com
RewriteRule .* http://www.domain2.com%{REQUEST_URI} [R=301,L]
但它不起作用,如果我去www.domain.com/product1,它会重定向到www.domain2.com,总是转到主页

我猜这是因为它是一个magento multistore安装,并且两个域都存储在同一个magento安装上。

这应该可以:

Options +FollowSymLinks 
RewriteEngine on

RewriteCond %{HTTP_HOST} ^www.old-domain.com$ [NC]
RewriteRule ^(.*)$ http://www.new-domain.com/$1 [R=301,L]

我知道这是一篇很老的帖子,但是遇到了同样的问题,如果你在上面添加了RewriteCond和RewriteRule,它应该可以工作,但是请确保你也注释掉了这行内容

RewriteRule .* index.php [L]
#RewriteRule .* index.php [L]
…如果它存在的话

例如: