当 nginx 已经读取了请求体数据,并且请求体数据并没有足够大到缓冲到临时文件的时候,请求体数据会在 $request_body 或者 $echo_request_body(这个变量来自 ngx_echo 模块)变量中。 值得提醒的是,当 nginx 尚未读取请求体的时候,或者请求体有一部分或者全部缓冲到临时文件的时候,$request_body 和 $echo_request_body 都将是空值。 Nginx 读取请求体是按需的,如果使用 ngx_proxy 模块的话,读取发生在 content 请求处理阶段。所以如果在早于 content 阶段之前的阶段(比如 rewrite 阶段)去读取 $request_body,则必是空值。关于请求处理阶段的概念,可以参见的 nginx 连载教程: http://agentzh.org/misc/nginx/agentzh-nginx-tutorials-zhcn.html#02-Ng... (责任编辑:IT) |