$args

$args 变量包含请求的查询字符串参数,不包括 '?' 字符。 — NGINX Core (HTTP)

$args NGINX Core (HTTP)

说明

在 NGINX 中,$args 变量用于从传入请求的 URL 中检索查询字符串。它包含在 '?' 字符之后作为 URL 一部分传递的任何参数。例如,在类似 'http://example.com/page?name=John&age=30' 的 URL 中,$args 变量会返回 'name=John&age=30'。 当 NGINX 处理 HTTP 请求时,$args 变量会被自动填充,使其在多种上下文中可用,包括在 server 或 location 块内,以及接受变量的指令中。需要注意的是,如果查询字符串中没有参数,$args 的值将是空字符串。此外,应谨慎使用此变量,以避免意外公开可能包含在查询字符串中的敏感信息。

配置示例

location /search {
    if ($args) {
        set $search_query $args;
        # Log or handle the search query
        access_log /var/log/nginx/search.log;
    }
}

子系统

http

可缓存

上下文

http, server, location, if

请记住,$args 包含所有查询参数,因此在处理敏感数据时要谨慎。

如果没有查询参数,$args 将返回空字符串,而不是 'null'。

在使用之前应正确解码任何 URL 编码的值,因为 $args 会以编码形式包含它们。