.htaccess重定向文件夹除了一个文件夹

时间:2013-01-01 15:16:42

标签: apache mod-rewrite redirect

我想将以下类型的文件夹重定向:example.com/stores/something/title/ example.com/stores/title/。我做了以下重定向:

RedirectMatch 301 /stores/(.*)/(.*)/(.*) http://www.example.com/stores/$2/$3

但是我有一个问题:我不想重定向这些链接:

example.com/stores/title/page/2/

我的重定向将上述链接重定向到example.com/stores/2/。所以我想重定向一切,除了有一个“页面”子文件夹。

2 个答案:

答案 0 :(得分:0)

RewriteRule .*/page/.* - [L]

应该这样做。它应该出现在其他规则之上。

答案 1 :(得分:0)

您可以使用否定前瞻来确保第三个参数不是“页面”

RedirectMatch 301 /stores/(.*)/(?!page)(.*)/(.*) http://www.example.com/stores/$2/$3