Thanks so much for your detailed answer. Works like a charm :)
But i see i can't access this from LUA?
> The
ngx.location.capture and ngx.location.capture_multi Lua methods cannot > capture locations configured by ngx_echo module's
echo_location, echo_location_async,
> echo_subrequest, or echo_subrequest_async directives. This won't be fixed in the future due to technical problems :)but is it possible to get
echo_request_bodydirectly in nginx LUA?
Thanks.
Alexander
On 16.03.2011 03:28, agentzh wrote:
On Wed, Mar 16, 2011 at 6:15 AM, Alexander Kunz <akunz@ntmedia.de> wrote:Hello, any chance to debug the -f function? I use the debug log, but get no information about the file... /body1 shows me "test" but /body2 shows nothing... no error, no body content...Because there's no error in your /body2 request, no log is expected to be printed ;)location /body1 { echo_subrequest POST /sub -b 'test'; } location /body2 { echo_subrequest POST /sub -f /tmp/hello.txt; } location /sub { echo "body: $echo_request_body"; }Why $echo_request_body is empty for /body2? Because "echo_subrequest /sub -f /tmp/hello.txt" produces a request body that consists of *file* buffers only (such that nginx does not bother reading the whole disk file into RAM at once) and $echo_request_body only respects pure *memory* buffers. The following example comes from the ngx_echo's test suite: location /main { echo_subrequest POST /sub -f html/blah.txt; } location /sub { echo "sub method: $echo_request_method"; # we don't need to call echo_read_client_body explicitly here echo_request_body; } where html/blah.txt contains the following contents: Hello, world Then GET /main gives sub method: POST Hello, world Cheers, -agentzh _______________________________________________ nginx mailing list nginx@nginx.org http://nginx.org/mailman/listinfo/nginx
0 评论:
发表评论