.htaccess根据PHP参数和一般情况重定向

时间:2015-08-06 14:45:26

标签: php apache .htaccess redirect

关于另一个主题:.htaccess redirect according to PHP parameters我根据一些PHP参数获得了重定向的帮助,例如

/forum/viewtopic.php?t=123 redirected to /page1.html
/forum/viewtopic.php?t=345 redirected to /page7.html
/forum/viewtopic.php?t=89 redirected to page3.html

提出的(工作)解决方案是

RewriteEngine On
RewriteCond %{QUERY_STRING} ^t=123$
RewriteRule ^forum/viewtopic\.php$ /page1.html? [L,R=301]

RewriteCond %{QUERY_STRING} ^t=345$
RewriteRule ^forum/viewtopic\.php$ /page7.html? [L,R=301]

RewriteCond %{QUERY_STRING} ^t=89$
RewriteRule ^forum/viewtopic\.php$ /page3.html? [L,R=301]

我想添加一个" general"最后的案例:如果没有匹配的URL,则文件夹" / forum"被问到,重定向到根。例如

/forum redirected to /
/forum/viewtopic.php?t=34598237 redirected to /
/forum/something redirected to /

我该怎么做?

1 个答案:

答案 0 :(得分:1)

只需在最后添加这一行:

RewriteRule ^forum / [L,R=301]

由于您之前的所有条件都有[L]修饰符(指示任何进一步的规则处理),因此只有在任何先前的条件不匹配时才会启动此最后一个条件。