重定向所有请求,但只有一个

时间:2011-05-11 05:39:45

标签: regex apache mod-rewrite

我想知道如何重定向所有请求,例如

foobar.com/cat
foobar.com/cat/1
foobar.com/etc

foobar.com/index.php

但不影响

foobar.com/webmaster/

我不希望foobar.com/webmaster/重定向到index.php。我想要它的默认行为

如何使用mod_rewrite?

2 个答案:

答案 0 :(得分:2)

RewriteEngine on

RewriteRule ^webmaster/ - [QSA,L]
RewriteRule .* index.php [QSA,L]

答案 1 :(得分:1)

尝试将此foobar.com/(?!webmaster)[\w\/\d\_\-\:\;\?\=\.]+作为正则表达式以匹配除 foobar.com/webmaster /

之外的所有其他正则表达式

应用此正则表达式选择除foobar.com/webmaster/以外的所有内容并与

匹配
foobar.com/cat
foobar.com/cat/1
foobar.com/etc

添加替换为

foobar.com/index.php