【问题标题】:How to redirect (301) multiple urls with the same path to on different domains in htaccess如何将(301)具有相同路径的多个url重定向到htaccess中的不同域
【发布时间】:2015-09-12 02:57:50
【问题描述】:

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

www.domain1.com/page-xyz.html

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

www.domain1.com/page-xyz/

为了确保旧网址重定向到新网址,我在 .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/

对于这个网址,我还想添加一个 301 重定向。问题是,使用重定向规则,URL www.domain2.com/page-xyz.html 将被重定向到 http://www.domain1.com/page-xyz/ 我如何能够创建一个重定向规则来保留域?

非常感谢。

【问题讨论】:

    标签: apache .htaccess redirect url-rewriting url-redirection


    【解决方案1】:

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

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

    请务必在清除浏览器缓存后对其进行测试。

    【讨论】:

      【解决方案2】:

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

      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/
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-05-07
        • 2016-10-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多