comparison src/http/modules/ngx_http_not_modified_filter_module.c @ 126:df17fbafec8f NGINX_0_3_10

nginx 0.3.10 *) Change: the "valid_referers" directive and the "$invalid_referer" variable were moved to the new ngx_http_referer_module from the ngx_http_rewrite_module. *) Change: the "$apache_bytes_sent" variable name was changed to "$body_bytes_sent". *) Feature: the "$sent_http_..." variables. *) Feature: the "if" directive supports the "=" and "!=" operations. *) Feature: the "proxy_pass" directive supports the HTTPS protocol. *) Feature: the "proxy_set_body" directive. *) Feature: the "post_action" directive. *) Feature: the ngx_http_empty_gif_module. *) Feature: the "worker_cpu_affinity" directive for Linux. *) Bugfix: the "rewrite" directive did not unescape URI part in redirect, now it is unescaped except the %00-%25 and %7F-%FF characters. *) Bugfix: nginx could not be built by the icc 9.0 compiler. *) Bugfix: if the SSI was enabled for zero size static file, then the chunked response was encoded incorrectly.
author Igor Sysoev <http://sysoev.ru>
date Tue, 15 Nov 2005 00:00:00 +0300
parents f63280c59dd5
children 36af50a5582d
comparison
equal deleted inserted replaced
125:97504de1f89e 126:df17fbafec8f
59 return ngx_http_next_header_filter(r); 59 return ngx_http_next_header_filter(r);
60 } 60 }
61 61
62 ims = ngx_http_parse_time(r->headers_in.if_modified_since->value.data, 62 ims = ngx_http_parse_time(r->headers_in.if_modified_since->value.data,
63 r->headers_in.if_modified_since->value.len); 63 r->headers_in.if_modified_since->value.len);
64 64
65 ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, 65 ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
66 "http ims:%d lm:%d", ims, r->headers_out.last_modified_time); 66 "http ims:%d lm:%d", ims, r->headers_out.last_modified_time);
67 67
68 /* 68 /*
69 * I think that the equality of the dates is correcter 69 * I think that the equality of the dates is correcter
70 */ 70 */
71 71
72 if (ims != NGX_ERROR && ims == r->headers_out.last_modified_time) { 72 if (ims != NGX_ERROR && ims == r->headers_out.last_modified_time) {
73 r->headers_out.status = NGX_HTTP_NOT_MODIFIED; 73 r->headers_out.status = NGX_HTTP_NOT_MODIFIED;
74 r->headers_out.content_type.len = 0; 74 r->headers_out.content_type.len = 0;
75 r->headers_out.content_length_n = -1; 75 ngx_http_clear_content_length(r);
76 r->headers_out.content_length = NULL; 76 ngx_http_clear_accept_ranges(r);
77 #if 0
78 r->headers_out.accept_ranges->hash = 0;
79 #endif
80 } 77 }
81 78
82 return ngx_http_next_header_filter(r); 79 return ngx_http_next_header_filter(r);
83 } 80 }
84 81