Mercurial > hg > nginx
comparison src/http/ngx_http_core_module.c @ 3573:5d9ff79eab6f stable-0.7
merge r3316, r3317, r3420, r3421, r3453:
browsers related fixes:
*) add MSIE padding for Chrome too
*) disable keepalive for Safari:
https://bugs.webkit.org/show_bug.cgi?id=5760
*) do not disable keepalive after POST requests for MSIE 7+
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 04 Jun 2010 17:47:04 +0000 |
parents | b0fbe6ab9ebe |
children | 28ee756697b1 |
comparison
equal
deleted
inserted
replaced
3572:b7c4d96cd61c | 3573:5d9ff79eab6f |
---|---|
742 case NGX_HTTP_CONNECTION_KEEP_ALIVE: | 742 case NGX_HTTP_CONNECTION_KEEP_ALIVE: |
743 r->keepalive = 1; | 743 r->keepalive = 1; |
744 break; | 744 break; |
745 } | 745 } |
746 | 746 |
747 if (r->keepalive && r->headers_in.msie && r->method == NGX_HTTP_POST) { | 747 if (r->keepalive) { |
748 | 748 |
749 /* | 749 if (r->headers_in.msie6) { |
750 * MSIE may wait for some time if an response for | 750 if (r->method == NGX_HTTP_POST) { |
751 * a POST request was sent over a keepalive connection | 751 /* |
752 */ | 752 * MSIE may wait for some time if an response for |
753 | 753 * a POST request was sent over a keepalive connection |
754 r->keepalive = 0; | 754 */ |
755 r->keepalive = 0; | |
756 } | |
757 | |
758 } else if (r->headers_in.safari) { | |
759 /* | |
760 * Safari may send a POST request to a closed keepalive | |
761 * connection and stalls for some time | |
762 */ | |
763 r->keepalive = 0; | |
764 } | |
755 } | 765 } |
756 | 766 |
757 if (r->headers_in.content_length_n > 0) { | 767 if (r->headers_in.content_length_n > 0) { |
758 r->lingering_close = 1; | 768 r->lingering_close = 1; |
759 | 769 |