如何访问 mod_rewrite RewriteCond 中的 GET 参数?

如何访问 mod_rewrite RewriteCond 中的 GET 参数?

我正在尝试从 mod_rewrite 访问 GET 参数。

例如,给定以下 URL:http://myserver.com/foo.png?foo=bar

以下规则不会捕获此 URL:

RewriteCond %{REQUEST_URI} bar [NC]

而这个确实如此:

RewriteCond %{THE_REQUEST} bar [NC]

REQUEST_URI 不包括 GET 参数吗?THE_REQUEST 是可行的方法吗?

答案1

是的,THE_REQUEST这是可行的方法,因为它将包含整个 http 请求并附带以下规定:

THE_REQUEST
The full HTTP request line sent by the browser to the server (e.g., "GET /index.html HTTP/1.1"). This does not include any additional headers sent by the browser.

相关内容