【问题标题】:301 redirects redirecting not the specified link301 重定向重定向不是指定的链接
【发布时间】:2018-07-23 23:28:36
【问题描述】:

想要将一些链接从旧站点重定向到新站点并这样做:

Redirect 301 /benefits  http://newsite.com/our-differiantiators/
Redirect 301 /benefits/our-people http://newsite.com/about-us/
Redirect 301 /benefits/our-places http://newsite.com/infrastucture/
Redirect 301 /benefits/our-platforms    http://newsite.com/infrastucture/
Redirect 301 /benefits/our-experience http://newsite.com/
Redirect 301 /benefits/our-testimonials http://newsite.com/

但如果我尝试转到我的newsite.com/benefits/our-people,它会重定向到newsite.com/our-differiantiators/our-people 而不是newsite.com/about-us

我应该如何修复我的 .htaccess 代码以按照我的意愿进行重定向?

附: 也许是因为 slug /our-people/our-differiantiators 和 wordpress 以某种方式处理这个问题?

【问题讨论】:

  • 如果你去掉第一个like,它工作正常吗?试试看(看看发生了什么),然后尝试通过这一行更改它:RedirectMatch /benefits$ http://newsite.com/our-differiantiators/ [R=301,L]
  • nope.. 它不工作.. 它仍然将我重定向到 newsite.com/our-differiantiators/our-people ... mybe 这是因为 slug our-peopleour-differiantiators 并且不知何故 wordpress 正在处理?
  • @ishegg no [R=301,L] 使用 RedirectMatch 它是 mod_alias

标签: wordpress .htaccess redirect mod-rewrite mod-alias


【解决方案1】:

改变这一行:

Redirect 301 /benefits  http://newsite.com/our-differiantiators/

通过这个:

RedirectMatch  301 /benefits/$  http://newsite.com/our-differiantiators/

使用RedirectMatch,您将只匹配benefits/,以斜线结尾,单独出现的目录,否则其他规则将起作用

【讨论】:

  • 还是什么都没有.. :/
【解决方案2】:

尝试在文件末尾写:Redirect 301 /benefits http://newsite.com/our-differiantiators/

或者您可以更改第一行: RedirectMatch ^/benefits$ http://newsite.com/our-differiantiators/

【讨论】:

  • 与文件顶部相同的结果:/
  • 从头删除,在尾添加。我试过了,它有效,你保存了 .htaccess 文件?
  • 不..它不工作..它仍然将我重定向到newsite.com/our-differiantiators/our-people ...我可能是因为蛞蝓我们的人民和我们的差异化器和wordpress是处理那个?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-12
  • 1970-01-01
  • 2014-08-31
  • 2012-04-10
  • 1970-01-01
  • 1970-01-01
  • 2021-06-01
相关资源
最近更新 更多