301重定向到完整路径

时间:2016-01-27 09:18:43

标签: regex .htaccess url-rewriting

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

  

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

虽然正确的路径是

  

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

有数百个......我怎么能从错误的链接重定向到正确的链接?

非常感谢你提前

1 个答案:

答案 0 :(得分: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]表示应该停止处理其他规则并使用301标头代码重定向。