comparison src/http/modules/ngx_http_static_module.c @ 356:b743d290eb3b NGINX_0_6_22

nginx 0.6.22 *) Change: now all ngx_http_perl_module methods return values copied to perl's allocated memory. *) Bugfix: if nginx was built with ngx_http_perl_module, the perl before 5.8.6 was used, and perl supported threads, then during reconfiguration the master process aborted; bug appeared in 0.5.9. Thanks to Boris Zhmurov. *) Bugfix: the ngx_http_perl_module methods may get invalid values of the regex captures. *) Bugfix: a segmentation fault occurred in worker process, if the $r->has_request_body() method was called for a request whose small request body was already received. *) Bugfix: large_client_header_buffers did not freed before going to keep-alive state. Thanks to Olexander Shtepa. *) Bugfix: the last address was missed in the $upstream_addr variable; bug appeared in 0.6.18. *) Bugfix: the "fastcgi_catch_stderr" directive did return error code; now it returns 502 code, that can be rerouted to a next server using the "fastcgi_next_upstream invalid_header" directive. *) Bugfix: a segmentation fault occurred in master process if the "fastcgi_catch_stderr" directive was used; bug appeared in 0.6.10. Thanks to Manlio Perillo.
author Igor Sysoev <http://sysoev.ru>
date Wed, 19 Dec 2007 00:00:00 +0300
parents 3a91bfeffaba
children 9121a0a91f47
comparison
equal deleted inserted replaced
355:3ac45897a61c 356:b743d290eb3b
47 static ngx_int_t 47 static ngx_int_t
48 ngx_http_static_handler(ngx_http_request_t *r) 48 ngx_http_static_handler(ngx_http_request_t *r)
49 { 49 {
50 u_char *last, *location; 50 u_char *last, *location;
51 size_t root; 51 size_t root;
52 ngx_fd_t fd;
53 ngx_str_t path; 52 ngx_str_t path;
54 ngx_int_t rc; 53 ngx_int_t rc;
55 ngx_uint_t level; 54 ngx_uint_t level;
56 ngx_log_t *log; 55 ngx_log_t *log;
57 ngx_buf_t *b; 56 ngx_buf_t *b;
138 } 137 }
139 138
140 return rc; 139 return rc;
141 } 140 }
142 141
143 fd = of.fd; 142 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, log, 0, "http static fd: %d", of.fd);
144
145 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, log, 0, "http static fd: %d", fd);
146 143
147 if (of.is_dir) { 144 if (of.is_dir) {
148 145
149 ngx_log_debug0(NGX_LOG_DEBUG_HTTP, log, 0, "http dir"); 146 ngx_log_debug0(NGX_LOG_DEBUG_HTTP, log, 0, "http dir");
150 147
228 225
229 b->in_file = b->file_last ? 1: 0; 226 b->in_file = b->file_last ? 1: 0;
230 b->last_buf = (r == r->main) ? 1: 0; 227 b->last_buf = (r == r->main) ? 1: 0;
231 b->last_in_chain = 1; 228 b->last_in_chain = 1;
232 229
233 b->file->fd = fd; 230 b->file->fd = of.fd;
234 b->file->name = path; 231 b->file->name = path;
235 b->file->log = log; 232 b->file->log = log;
236 233
237 out.buf = b; 234 out.buf = b;
238 out.next = NULL; 235 out.next = NULL;