我正在尝试学习一点.htaccess,我真的很担心它能做些什么。我在网上看到了一个片段,但无法让它工作,它基本上就像这样如果查询字符串没有特定值,则将其重定向到index.php 或其他页面。我该怎么做?
这会查找值 apples :
www.domain.com/somefile.php?a=apples&b=xyz
这将重定向到index.php:
www.domain.com/somefile.php?a=stinkycheese&b=xyz
答案 0 :(得分:16)
您需要在RewriteCond中使用%{QUERY_STRING}变量。例如,如果您不想在查询字符串中存在redirect=no
时重定向,则它将如下所示:
RewriteCond %{QUERY_STRING} !(^|&)redirect=no($|&)
RewriteRule . /index.php [L]
因此,如果RewriteCond失败(查询字符串中有redirect=no
),则不要应用以下规则,该规则会将请求URI重写为/index.php
。您需要的实际规则可能有所不同,但使用RewriteCond和%{QUERY_STRING}是您想要的基本想法。