comparison src/http/ngx_http_core_module.h @ 2655:87e1fcd9b604 stable-0.6

r2202, r2408, r2425, r2454, r2459, r2482, r2504, r2542, r2565, r2579, r2580, r2585, r2586, r2587, r2591, r2626 merge: try_files
author Igor Sysoev <igor@sysoev.ru>
date Thu, 02 Apr 2009 06:44:45 +0000
parents a69e3766f698
children 0ea35a84c72d
comparison
equal deleted inserted replaced
2654:96b878c984f4 2655:87e1fcd9b604
77 NGX_HTTP_PREACCESS_PHASE, 77 NGX_HTTP_PREACCESS_PHASE,
78 78
79 NGX_HTTP_ACCESS_PHASE, 79 NGX_HTTP_ACCESS_PHASE,
80 NGX_HTTP_POST_ACCESS_PHASE, 80 NGX_HTTP_POST_ACCESS_PHASE,
81 81
82 NGX_HTTP_TRY_FILES_PHASE,
82 NGX_HTTP_CONTENT_PHASE, 83 NGX_HTTP_CONTENT_PHASE,
83 84
84 NGX_HTTP_LOG_PHASE 85 NGX_HTTP_LOG_PHASE
85 } ngx_http_phases; 86 } ngx_http_phases;
86 87
124 125
125 ngx_uint_t variables_hash_max_size; 126 ngx_uint_t variables_hash_max_size;
126 ngx_uint_t variables_hash_bucket_size; 127 ngx_uint_t variables_hash_bucket_size;
127 128
128 ngx_hash_keys_arrays_t *variables_keys; 129 ngx_hash_keys_arrays_t *variables_keys;
130
131 ngx_uint_t try_files; /* unsigned try_files:1 */
129 132
130 ngx_http_phase_t phases[NGX_HTTP_LOG_PHASE + 1]; 133 ngx_http_phase_t phases[NGX_HTTP_LOG_PHASE + 1];
131 } ngx_http_core_main_conf_t; 134 } ngx_http_core_main_conf_t;
132 135
133 136
232 ngx_str_t uri; 235 ngx_str_t uri;
233 ngx_str_t args; 236 ngx_str_t args;
234 ngx_array_t *uri_lengths; 237 ngx_array_t *uri_lengths;
235 ngx_array_t *uri_values; 238 ngx_array_t *uri_values;
236 } ngx_http_err_page_t; 239 } ngx_http_err_page_t;
240
241
242 typedef struct {
243 ngx_array_t *lengths;
244 ngx_array_t *values;
245 ngx_str_t name;
246 ngx_uint_t test_dir; /* unsigned test_dir:1; */
247 } ngx_http_try_file_t;
237 248
238 249
239 typedef struct ngx_http_core_loc_conf_s ngx_http_core_loc_conf_t; 250 typedef struct ngx_http_core_loc_conf_s ngx_http_core_loc_conf_t;
240 251
241 struct ngx_http_core_loc_conf_s { 252 struct ngx_http_core_loc_conf_s {
323 ngx_array_t *gzip_disable; /* gzip_disable */ 334 ngx_array_t *gzip_disable; /* gzip_disable */
324 #endif 335 #endif
325 #endif 336 #endif
326 337
327 ngx_array_t *error_pages; /* error_page */ 338 ngx_array_t *error_pages; /* error_page */
339 ngx_http_try_file_t *try_files; /* try_files */
328 340
329 ngx_path_t *client_body_temp_path; /* client_body_temp_path */ 341 ngx_path_t *client_body_temp_path; /* client_body_temp_path */
330 342
331 ngx_open_file_cache_t *open_file_cache; 343 ngx_open_file_cache_t *open_file_cache;
332 time_t open_file_cache_valid; 344 time_t open_file_cache_valid;
353 ngx_int_t ngx_http_core_post_rewrite_phase(ngx_http_request_t *r, 365 ngx_int_t ngx_http_core_post_rewrite_phase(ngx_http_request_t *r,
354 ngx_http_phase_handler_t *ph); 366 ngx_http_phase_handler_t *ph);
355 ngx_int_t ngx_http_core_access_phase(ngx_http_request_t *r, 367 ngx_int_t ngx_http_core_access_phase(ngx_http_request_t *r,
356 ngx_http_phase_handler_t *ph); 368 ngx_http_phase_handler_t *ph);
357 ngx_int_t ngx_http_core_post_access_phase(ngx_http_request_t *r, 369 ngx_int_t ngx_http_core_post_access_phase(ngx_http_request_t *r,
370 ngx_http_phase_handler_t *ph);
371 ngx_int_t ngx_http_core_try_files_phase(ngx_http_request_t *r,
358 ngx_http_phase_handler_t *ph); 372 ngx_http_phase_handler_t *ph);
359 ngx_int_t ngx_http_core_content_phase(ngx_http_request_t *r, 373 ngx_int_t ngx_http_core_content_phase(ngx_http_request_t *r,
360 ngx_http_phase_handler_t *ph); 374 ngx_http_phase_handler_t *ph);
361 375
362 ngx_int_t ngx_http_set_content_type(ngx_http_request_t *r); 376 ngx_int_t ngx_http_set_content_type(ngx_http_request_t *r);