用mod_rewrite重写类别和子类别

时间:2014-02-13 05:53:43

标签: apache .htaccess mod-rewrite

以前的目录命名约定产生了以下内容:

www.mysite.com/oldcategory/oldsubcategory/page1.html
www.mysite.com/oldcategory/oldsubcategory/page2.html
www.mysite.com/oldcategory/oldsubcategory/page3.html
...etc.

目录已重命名,因此我需要将上述内容重写为:

www.mysite.com/newcategory/newsubcategory/page1
www.mysite.com/newcategory/newsubcategory/page2
www.mysite.com/newcategory/newsubcategory/page3
...etc.

我已经有了'.html'的重写规则,但我不确定如何重写目录名。

另外,值得注意的是我已经在htaccess文件中有几个文件重写规则。如果目录重写的规则必须放在文件重写规则的上方或下方,我就提到这一点。

任何指针都会非常感激。

1 个答案:

答案 0 :(得分:0)

您可以尝试将此重写规则作为第一条规则:

RewriteRule ^oldcategory/oldsubcategory/([^.]+)\.html$ newcategory/newsubcategory/$1 [L,NC,R=301]