如何将具有相同路径的多个 url 重定向 (301) 到 htaccess 中的不同域

How to redirect (301) multiple urls with the same path to on different domains in htaccess

我最近将一个域移动到一个新服务器,并在此过程中更改了一些 url。旧情况:

www.domain1.com/page-xyz.html

在新服务器上,可以在以下位置看到相同的页面:

www.domain1.com/page-xyz/

为了确保旧 url 重定向到新的,我在 .htaccess 文件中添加了以下行:

Redirect 301 /page-xyz.html http://www.domain1.com/page-xyz/

到目前为止一切正常。 现在,我已将第二个域 (domain2.com) 移至新服务器。 domain1.com 和 domain2.com 共享同一个目录。

在 domain2.com 的旧服务器上也有一个 url 这样的:

www.domain2.com/page-xyz.html

在新服务器上可以在以下位置看到此页面:

www.domain2.com/page-xyz/

为此 url 我还想添加一个 301 重定向。问题是,有了重定向规则,url www.domain2.com/page-xyz.html 将被重定向到 http://www.domain1.com/page-xyz/ 我如何才能创建重定向规则,以保留域?

非常感谢。

未经测试,但我认为这会让您走上正确的道路:

RewriteCond %{HTTP_HOST} ^domain1.com$
Redirect 301 page-xyz.html http://www.domain1.com/page-xyz/

RewriteCond %{HTTP_HOST} ^domain2.com$
Redirect 301 page-xyz.html http://www.domain2.com/page-xyz/

只需从目标中删除域部分 URL:

Redirect 301 /page-xyz.html /page-xyz/

确保在清除浏览器缓存后对其进行测试。