IMHO, post_action will be much better here. Something like:
location / {
empty_gif;
post_action /post;
}
location = /post {
internal;
proxy_pass http://my_upstream_servers;
}
Thank you Denis and Maxim! Maxium can you elaborate on what the flow
would actually be like with the above scenario, and what advantages it
may have over the approach posted by Maxium?
I am trying to understand how the above actually works from the
browser’s perspective that originates the request…
For instance, with the above, will the browser’s request be fulfilled
by the first location blocked and then immediately closed (this is what
I am hoping for)? Or does the browser need to wait while nginx
executes the post_action?
I could not find any docs on post_action so I don’t know how it works or
what it does exactly. I came across this:
post_action does not block new connections, but it blocks current
connection.
nginx handles post_action in context of request and connection, so it
does not close connection to a client before going to post_action.So
again this makes me wonder whether nginx will immediately serve the gif
back to the browser and close that connection for the speed improvement
I am hoping for.
Assuming the above works how I would like, do I still need to return any
gif or other such response from my app? Or can I just close the
connection without upsetting nginx or making nginx think the backend is
down?
Thanks again!
____________________________________________________________________________________
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now.
http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ