2011/3/17 agentzh <agentzh@gmail.com>:
>
> I've reproduced it on my side. This is indeed a bug. When ngx.exec()
> is used after ngx.location.capture() or ngx.location.capture_multi(),
> nginx 0.8.11+ will not close the client connection due to leaked
> request reference counter (r->main->count). A hacky work-around is to
> disable nginx http keepalive and rely on the browser (and other http
> clients) to actively close the connection. And that's why wget, curl,
> firefox, and other well-written http clients worked for you.
>
> Nginx 0.7.68 (and older) is confirmed to work in this context just
> because older nginx does not use reference counting.
>
> I'll attempt fix in the next few days. Thank you for reporting this
> and sorry about this issue :)
>
Sorry for the delay. I've caught a really bad cold recently :(
The good news is that I've just fixed this issue in ngx_lua's git HEAD:
https://github.com/chaoslawful/lua-nginx-module
Alternatively, you can try out the new release candidate tarball,
which also includes this fix:
https://github.com/chaoslawful/lua-nginx-module/tarball/v0.1.6rc4
Please let me know if it works for you :)
Have fun!
-agentzh
_______________________________________________
nginx mailing list
nginx@nginx.org
http://nginx.org/mailman/listinfo/nginx