Changeset 2ac4f5
- Timestamp:
- 02/03/09 19:43:30 (3 years ago)
- Branches:
- master-v0.7, nginx-v0.7, nginx-v0.8, upstream_count_limit
- Children:
- 8310b2
- Parents:
- e7b311
- git-author:
- George Potapov <nephrite@…> (02/03/09 19:43:30)
- git-committer:
- George Potapov <nephrite@…> (02/03/09 19:43:30)
- Location:
- server
- Files:
-
- 13 edited
-
CHANGES (modified) (1 diff)
-
CHANGES.ru (modified) (1 diff)
-
src/core/nginx.h (modified) (1 diff)
-
src/core/ngx_cycle.c (modified) (1 diff)
-
src/core/ngx_open_file_cache.c (modified) (1 diff)
-
src/core/ngx_slab.c (modified) (2 diffs)
-
src/http/modules/ngx_http_fastcgi_module.c (modified) (7 diffs)
-
src/http/modules/ngx_http_geo_module.c (modified) (1 diff)
-
src/http/modules/ngx_http_gzip_filter_module.c (modified) (1 diff)
-
src/http/modules/perl/nginx.pm (modified) (1 diff)
-
src/http/ngx_http_core_module.c (modified) (4 diffs)
-
src/http/ngx_http_core_module.h (modified) (1 diff)
-
src/http/ngx_http_upstream.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
server/CHANGES
re7b311 r2ac4f5 1 2 Changes with nginx 0.7.32 26 Jan 2009 3 4 *) Feature: now a directory existence testing can be set explicitly in 5 the "try_files" directive. 6 7 *) Bugfix: fastcgi_store stored files not always. 8 9 *) Bugfix: in geo ranges. 10 11 *) Bugfix: in shared memory allocations if nginx was built without 12 debugging. 13 Thanks to Andrey Kvasov. 14 1 15 2 16 Changes with nginx 0.7.31 19 Jan 2009 -
server/CHANGES.ru
re7b311 r2ac4f5 1 2 éÚÍÅÎÅÎÉÑ × nginx 0.7.32 26.01.2009 3 4 *) äÏÂÁ×ÌÅÎÉÅ: ÔÅÐÅÒØ × ÄÉÒÅËÔÉ×Å try_files ÍÏÖÎÏ Ñ×ÎÏ ÕËÁÚÁÔØ ÐÒÏ×ÅÒËÕ 5 ËÁÔÁÌÏÇÁ. 6 7 *) éÓÐÒÁ×ÌÅÎÉÅ: fastcgi_store ÎÅ ×ÓÅÇÄÁ ÓÏÈÒÁÎÑÌ ÆÁÊÌÙ. 8 9 *) éÓÐÒÁ×ÌÅÎÉÅ: × ÇÅÏ-ÄÉÁÐÁÚÏÎÁÈ. 10 11 *) éÓÐÒÁ×ÌÅÎÉÅ: ÏÛÉÂËÉ ×ÙÄÅÌÅÎÉÑ ÂÏÌØÛÉÈ ÂÌÏËÏ× × ÒÁÚÄÅÌÑÅÍÏÊ ÐÁÍÑÔÉ, 12 ÅÓÌÉ nginx ÂÙÌ ÓÏÂÒÁÎ ÂÅÚ ÏÔÌÁÄËÉ. 13 óÐÁÓÉÂÏ áÎÄÒÅÀ ë×ÁÓÏ×Õ. 14 1 15 2 16 éÚÍÅÎÅÎÉÑ × nginx 0.7.31 19.01.2009 -
server/src/core/nginx.h
re7b311 r2ac4f5 9 9 10 10 11 #define NGINX_VERSION "0.7.3 1"11 #define NGINX_VERSION "0.7.32" 12 12 #define NGINX_VER "nginx/" NGINX_VERSION 13 13 -
server/src/core/ngx_cycle.c
re7b311 r2ac4f5 395 395 pool->log = cycle->new_log; 396 396 397 if (cycle->log->log_level == 0) { 398 cycle->log->log_level = NGX_LOG_ERR; 399 } 400 397 401 398 402 /* create shared memory */ -
server/src/core/ngx_open_file_cache.c
rcb7fc3 r2ac4f5 458 458 } 459 459 460 if ( of->is_dir) {460 if (ngx_is_dir(&fi)) { 461 461 goto done; 462 462 } -
server/src/core/ngx_slab.c
re7b311 r2ac4f5 662 662 663 663 page->slab = pages | NGX_SLAB_PAGE_START; 664 665 #if (NGX_DEBUG)666 664 page->next = NULL; 667 665 page->prev = NGX_SLAB_PAGE; 668 #endif669 666 670 667 if (--pages == 0) { … … 674 671 for (p = page + 1; pages; pages--) { 675 672 p->slab = NGX_SLAB_PAGE_BUSY; 676 #if (NGX_DEBUG)677 673 p->next = NULL; 678 674 p->prev = NGX_SLAB_PAGE; 679 #endif680 675 p++; 681 676 } -
server/src/http/modules/ngx_http_fastcgi_module.c
re7b311 r2ac4f5 136 136 static ngx_int_t ngx_http_fastcgi_path_info_variable(ngx_http_request_t *r, 137 137 ngx_http_variable_value_t *v, uintptr_t data); 138 static ngx_ int_tngx_http_fastcgi_split(ngx_http_request_t *r,139 ngx_http_fastcgi_ ctx_t *f, ngx_http_fastcgi_loc_conf_t *flcf);138 static ngx_http_fastcgi_ctx_t *ngx_http_fastcgi_split(ngx_http_request_t *r, 139 ngx_http_fastcgi_loc_conf_t *flcf); 140 140 141 141 static char *ngx_http_fastcgi_pass(ngx_conf_t *cf, ngx_command_t *cmd, … … 2112 2112 ngx_http_fastcgi_loc_conf_t *flcf; 2113 2113 2114 f = ngx_http_get_module_ctx(r, ngx_http_fastcgi_module);2115 2114 flcf = ngx_http_get_module_loc_conf(r, ngx_http_fastcgi_module); 2116 2115 2117 if (ngx_http_fastcgi_split(r, f, flcf) != NGX_OK) { 2116 f = ngx_http_fastcgi_split(r, flcf); 2117 2118 if (f == NULL) { 2118 2119 return NGX_ERROR; 2119 2120 } … … 2152 2153 ngx_http_fastcgi_loc_conf_t *flcf; 2153 2154 2154 f = ngx_http_get_module_ctx(r, ngx_http_fastcgi_module);2155 2155 flcf = ngx_http_get_module_loc_conf(r, ngx_http_fastcgi_module); 2156 2156 2157 if (ngx_http_fastcgi_split(r, f, flcf) != NGX_OK) { 2157 f = ngx_http_fastcgi_split(r, flcf); 2158 2159 if (f == NULL) { 2158 2160 return NGX_ERROR; 2159 2161 } … … 2169 2171 2170 2172 2171 static ngx_int_t 2172 ngx_http_fastcgi_split(ngx_http_request_t *r, ngx_http_fastcgi_ctx_t *f, 2173 ngx_http_fastcgi_loc_conf_t *flcf) 2173 static ngx_http_fastcgi_ctx_t * 2174 ngx_http_fastcgi_split(ngx_http_request_t *r, ngx_http_fastcgi_loc_conf_t *flcf) 2174 2175 { 2176 ngx_http_fastcgi_ctx_t *f; 2175 2177 #if (NGX_PCRE) 2176 ngx_int_t n; 2177 int captures[(1 + 2) * 3]; 2178 ngx_int_t n; 2179 int captures[(1 + 2) * 3]; 2180 2181 f = ngx_http_get_module_ctx(r, ngx_http_fastcgi_module); 2182 2183 if (f == NULL) { 2184 f = ngx_pcalloc(r->pool, sizeof(ngx_http_fastcgi_ctx_t)); 2185 if (f == NULL) { 2186 return NULL; 2187 } 2188 2189 ngx_http_set_ctx(r, f, ngx_http_fastcgi_module); 2190 } 2178 2191 2179 2192 if (f->script_name.len) { 2180 return NGX_OK;2193 return f; 2181 2194 } 2182 2195 2183 2196 if (flcf->split_regex == NULL) { 2184 2197 f->script_name = r->uri; 2185 return NGX_OK;2198 return f; 2186 2199 } 2187 2200 … … 2190 2203 if (n == NGX_REGEX_NO_MATCHED) { 2191 2204 f->script_name = r->uri; 2192 return NGX_OK;2205 return f; 2193 2206 } 2194 2207 … … 2197 2210 ngx_regex_exec_n " failed: %d on \"%V\" using \"%V\"", 2198 2211 n, &r->uri, &flcf->split_name); 2199 return N GX_ERROR;2212 return NULL; 2200 2213 } 2201 2214 … … 2208 2221 f->path_info.data = r->uri.data + f->script_name.len; 2209 2222 2210 return NGX_OK;2223 return f; 2211 2224 2212 2225 #else 2213 2226 2227 f = ngx_http_get_module_ctx(r, ngx_http_fastcgi_module); 2228 2229 if (f == NULL) { 2230 f = ngx_pcalloc(r->pool, sizeof(ngx_http_fastcgi_ctx_t)); 2231 if (f == NULL) { 2232 return NULL; 2233 } 2234 2235 ngx_http_set_ctx(r, f, ngx_http_fastcgi_module); 2236 } 2237 2214 2238 f->script_name = r->uri; 2215 2239 2216 return NGX_OK;2240 return f; 2217 2241 2218 2242 #endif -
server/src/http/modules/ngx_http_geo_module.c
re7b311 r2ac4f5 637 637 range = a->elts; 638 638 639 ngx_memcpy(&range[i + 2], &range[i + 1],640 (a->nelts - 2- i) * sizeof(ngx_http_geo_range_t));639 ngx_memcpy(&range[i + 1], &range[i], 640 (a->nelts - 1 - i) * sizeof(ngx_http_geo_range_t)); 641 641 642 642 range[i + 1].start = (u_short) (e + 1); -
server/src/http/modules/ngx_http_gzip_filter_module.c
r814e69 r2ac4f5 303 303 304 304 if (in) { 305 switch (ngx_http_gzip_filter_copy_recycled(ctx, in)) {306 307 case NGX_OK:308 return NGX_OK;309 310 case NGX_DONE:311 in = NULL;312 break;313 314 default: /* NGX_ERROR */315 goto failed;316 }305 switch (ngx_http_gzip_filter_copy_recycled(ctx, in)) { 306 307 case NGX_OK: 308 return NGX_OK; 309 310 case NGX_DONE: 311 in = NULL; 312 break; 313 314 default: /* NGX_ERROR */ 315 goto failed; 316 } 317 317 318 318 } else { -
server/src/http/modules/perl/nginx.pm
re7b311 r2ac4f5 48 48 ); 49 49 50 our $VERSION = '0.7.3 1';50 our $VERSION = '0.7.32'; 51 51 52 52 require XSLoader; -
server/src/http/ngx_http_core_module.c
re7b311 r2ac4f5 1039 1039 u_char *p, *name; 1040 1040 ngx_str_t path; 1041 ngx_uint_t test_dir; 1041 1042 ngx_http_try_file_t *tf; 1042 1043 ngx_open_file_info_t of; … … 1133 1134 } 1134 1135 } 1136 1137 test_dir = tf->test_dir; 1135 1138 1136 1139 tf++; … … 1173 1176 } 1174 1177 1175 if ( !of.is_file) {1178 if (of.is_dir && !test_dir) { 1176 1179 continue; 1177 1180 } … … 3854 3857 tf[i].name = value[i + 1]; 3855 3858 3859 if (tf[i].name.data[tf[i].name.len - 1] == '/') { 3860 tf[i].test_dir = 1; 3861 tf[i].name.len--; 3862 } 3863 3856 3864 n = ngx_http_script_variables_count(&tf[i].name); 3857 3865 -
server/src/http/ngx_http_core_module.h
rb82943 r2ac4f5 246 246 ngx_array_t *values; 247 247 ngx_str_t name; 248 ngx_uint_t test_dir; /* unsigned test_dir:1; */ 248 249 } ngx_http_try_file_t; 249 250 -
server/src/http/ngx_http_upstream.c
re7b311 r2ac4f5 2218 2218 tf = u->pipe->temp_file; 2219 2219 2220 if (p->upstream_eof ) {2220 if (p->upstream_eof || p->upstream_done) { 2221 2221 2222 2222 if (u->headers_in.status_n == NGX_HTTP_OK
Note: See TracChangeset
for help on using the changeset viewer.
