I have a server which needs to know when the client closes the connection. The server is behind an nginx reverse proxy. Everything works fine over HTTP, but as soon as I turn SSL on, nginx seems to hold the upstream connection open for a full minute after the HTTPS client has disconnected.
How can I get nginx to close the upstream connection when the client disconnects?
Here's my nginx config:
ssl_session_cache off;
server {
listen 443;
ssl on;
ssl_certificate server.crt;
ssl_certificate_key server.key;
location /find {
proxy_pass http://my_upstream;
proxy_ignore_client_abort off;
proxy_buffering off;
}
}
Best Answer
Quite late but might be helpful for others. I had the same problem and it turned out to be an issue with nginx (see https://www.ruby-forum.com/topic/4412004):
I applied the patch on 1.4.2 and it worked! No problems so far. Hopefully it will be fixed in one of the next releases.
Edited
This problem seems to be solved with nginx version >=1.5.5: