将{/ POSTID} / {CATID} / {TITLE}重定向到/ {POSTID} /

时间:2015-06-18 16:43:42

标签: apache .htaccess redirect rewrite

我需要有关重写/重定向规则的帮助,以修复我网站上的一些重复内容问题。

我的网址结构导致大量重复内容。可以通过以下方式访问同一页面:

  1. / Static1 / Static2 / Static3 / {POSTID} / {CATID} / {TITLE}
  2. / Static1 / Static2 / Static3 / {帖子ID} / {CATID} /
  3. / Static1 / Static2 / Static3 / {}帖子ID /
  4. 因此,每页有3份副本。

    我需要重定向#1& #2从上面到#3,所以/ Static1 / Static2 / Static3 / {POSTID} /是唯一的 URL,它将显示内容,另外2个将301到它。

    帖子ID和类别ID只是数字,但它们可以是不同的数字位数(/ 1 /,/ 24 /,/ 827 /等)

    标题包括数字,字母和短划线( - )

    / Static1 / Static2 / Static3 /表示我需要重写的部分之前的文件夹结构 - 这些文件夹名称始终相同,也应包含在URL中。

1 个答案:

答案 0 :(得分:1)

这真的很简单:

RewriteEngine On
RewriteRule ^(static1/static2/static3)/(\d+)/(\d+)(/[0-9a-z-]+)?/?$ /$1/$2 [NC,R=302,L]

表达式要求使用ID,并使标题和尾部斜杠可选。

要使重定向成为永久性,请将302更改为301