mod_rewrite - 如何检查 HTTP_REFERER 的 QUERY_STRING?

mod_rewrite - 如何检查 HTTP_REFERER 的 QUERY_STRING?

我正在尝试编写一条重定向规则,内容是“如果HTTP_REFERER包含某个QUERY_STRING,则执行此操作......”

换句话说,我有这种情况:

HTTP_REFERER: http://www.example.com/admin.php?foo=bar

... 我想说的是,“如果HTTP_REFERER包含QUERY_STRING‘foo=bar’,那么这样做...”有道理吗?哈哈

也许根本就不可能?我对 mod_rewrite 还比较陌生。

答案1

事实证明,QUERY_STRING已经是 的一部分HTTP_REFERER

所以解决方案很简单:

RewriteCond %{HTTP_REFERER} !foo=bar

答案2

尝试这个RewriteCond

RewriteCond %{HTTP_REFERER} ^[^?]+\?([^&]*&)*foo=bar(&.*)?$

相关内容