用htaccess文件重写或重定向?

时间:2011-12-22 17:01:07

标签: .htaccess

我有很多指向此http://example.com/sub-dir/post_name/2010/10/10/

的外部链接

我希望将它们重定向到此http://example.com/sub-dir/2010/10/10/post_name/

第一个链接是旧的url结构,第二个链接是新的url结构。

我尝试过的代码:

Redirect 301 /sub-dir/([a-z0-9-]+)/(\d{4}\/\d{2}\/\d{2})/ http://example.com/sub-dir/$2/$1/

1 个答案:

答案 0 :(得分:1)

RewriteEngine on
RewriteRule ([\w\-]+)/(\d+)/(\d+)/(\d+)/? /$2/$3/$4/$1 [R=301]

条件匹配如下:

  • 一个或多个单词/连字符
  • 斜线
  • 一个或多个数字字符
  • 斜线
  • 一个或多个数字字符
  • 斜线
  • 一个或多个数字字符

然后将用户(状态代码为301)重定向到这些子模式的不同排列。

请参阅mod_rewrite#RewriteRule