【问题标题】:301 redirect to full path301重定向到完整路径
【发布时间】:2016-01-27 09:18:42
【问题描述】:

我有很多不正确的反向链接,链接指向:

http://www.domain.com/tags/keyword

而正确的路径是

http://www.domain.com/tags/keyword/

有数百个...我如何 301 从错误的链接重定向到正确的链接?

非常感谢您

【问题讨论】:

  • 好吧,我已经尝试了不同的选项,阅读有关此主题的其他帖子并试图找到逻辑但没有奏效,我的知识非常有限..如果您能提供帮助,我将不胜感激,如果你可以解释一下解决方案,这样我就可以学到更多。

标签: regex .htaccess url-rewriting


【解决方案1】:

你可以试试这个代码:

RewriteBase /
RewriteRule ^tags/([^/]+)$ /tags/$1/ [L,R=301]
  • RewriteBase / 告诉 apache 你的 URI 以 / 开头。如果您的网站位于子文件夹中,则应改为使用 RewriteBase /subfolder/
  • ^tags/([^/]+)$:搜索以tags/ 开头的URI,后跟[^/]+,表示除/ 之外的任何字符。它周围的( ) 可以捕获它并在重定向中使用它。因此,我们捕获了 URI 中 tags/.../ 之间不是 / 的任何字符。 (^ 标记字符串的开始,$ 标记结束)
  • /tags/$1/ 是重定向。 $1 表示之前捕获的第一个元素(那个女巫在( ) 之间)。
  • [L,R=301] 向 apache 指示它应该停止处理其他规则并使用 301 标头代码进行重定向。

【讨论】:

  • 完美的工作请解释一下,以便我学习,不胜感激!
  • 我已经添加了更多解释 ;)
  • 非常感谢您的解释,也非常感谢您理解更好的正则表达式
猜你喜欢
  • 2020-03-05
  • 2016-08-21
  • 2011-11-08
  • 2014-06-22
  • 2019-04-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-10
相关资源
最近更新 更多