📄 ngx_http_request.h
字号:
ngx_chain_t *to_write; ngx_http_client_body_handler_pt post_handler;} ngx_http_request_body_t;typedef struct { ngx_http_request_t *request; ngx_buf_t **busy; ngx_int_t nbusy; ngx_buf_t **free; ngx_int_t nfree; ngx_uint_t pipeline; /* unsigned pipeline:1; */} ngx_http_connection_t;typedef struct ngx_http_server_name_s ngx_http_server_name_t;typedef struct { ngx_hash_combined_t names; ngx_uint_t nregex; ngx_http_server_name_t *regex;} ngx_http_virtual_names_t;typedef void (*ngx_http_cleanup_pt)(void *data);typedef struct ngx_http_cleanup_s ngx_http_cleanup_t;struct ngx_http_cleanup_s { ngx_http_cleanup_pt handler; void *data; ngx_http_cleanup_t *next;};typedef ngx_int_t (*ngx_http_post_subrequest_pt)(ngx_http_request_t *r, void *data, ngx_int_t rc);typedef struct { ngx_http_post_subrequest_pt handler; void *data;} ngx_http_post_subrequest_t;typedef struct ngx_http_postponed_request_s ngx_http_postponed_request_t;struct ngx_http_postponed_request_s { ngx_http_request_t *request; ngx_chain_t *out; ngx_http_postponed_request_t *next;};typedef ngx_int_t (*ngx_http_handler_pt)(ngx_http_request_t *r);typedef void (*ngx_http_event_handler_pt)(ngx_http_request_t *r);struct ngx_http_request_s { uint32_t signature; /* "HTTP" */ ngx_connection_t *connection; void **ctx; void **main_conf; void **srv_conf; void **loc_conf; ngx_http_event_handler_pt read_event_handler; ngx_http_event_handler_pt write_event_handler; ngx_http_cache_t *cache; ngx_http_upstream_t *upstream; ngx_array_t *upstream_states; /* of ngx_http_upstream_state_t */ ngx_pool_t *pool; ngx_buf_t *header_in; ngx_http_headers_in_t headers_in; ngx_http_headers_out_t headers_out; ngx_http_request_body_t *request_body; time_t lingering_time; time_t start_sec; ngx_msec_t start_msec; ngx_uint_t method; ngx_uint_t http_version; ngx_str_t request_line; ngx_str_t uri; ngx_str_t args; ngx_str_t exten; ngx_str_t unparsed_uri; ngx_str_t method_name; ngx_str_t http_protocol; ngx_chain_t *out; ngx_http_request_t *main; ngx_http_request_t *parent; ngx_http_postponed_request_t *postponed; ngx_http_post_subrequest_t *post_subrequest; uint32_t in_addr; ngx_uint_t port; ngx_str_t *port_text; /* ":80" */ ngx_http_virtual_names_t *virtual_names; ngx_int_t phase_handler; ngx_http_handler_pt content_handler; ngx_uint_t access_code; ngx_http_variable_value_t *variables; size_t limit_rate; /* used to learn the Apache compatible response length without a header */ size_t header_size; off_t request_length; ngx_uint_t err_status; ngx_http_connection_t *http_connection; ngx_http_log_handler_pt log_handler; ngx_http_cleanup_t *cleanup; unsigned http_state:4; /* URI with "/." and on Win32 with "//" */ unsigned complex_uri:1; /* URI with "%" */ unsigned quoted_uri:1; /* URI with "+" */ unsigned plus_in_uri:1; /* URI with "\0" or "%00" */ unsigned zero_in_uri:1; unsigned invalid_header:1; unsigned valid_location:1; unsigned valid_unparsed_uri:1; unsigned uri_changed:1; unsigned uri_changes:4; unsigned request_body_in_single_buf:1; unsigned request_body_in_file_only:1; unsigned request_body_in_persistent_file:1; unsigned request_body_in_clean_file:1; unsigned request_body_file_group_access:1; unsigned request_body_file_log_level:3; unsigned fast_subrequest:1; unsigned subrequest_in_memory:1; unsigned gzip:2; unsigned proxy:1; unsigned bypass_cache:1; unsigned no_cache:1;#if (NGX_HTTP_REALIP) /* * instead of using the request context data in ngx_http_realip_module * we use the single bit in the request structure */ unsigned realip_set:1;#endif /* * instead of using the request context data in ngx_http_limit_zone_module * we use the single bit in the request structure */ unsigned limit_zone_set:1;#if 0 unsigned cacheable:1;#endif unsigned pipeline:1; unsigned plain_http:1; unsigned chunked:1; unsigned header_only:1; unsigned zero_body:1; unsigned keepalive:1; unsigned lingering_close:1; unsigned discard_body:1; unsigned internal:1; unsigned error_page:1; unsigned post_action:1; unsigned request_complete:1; unsigned request_output:1; unsigned header_sent:1; unsigned done:1; unsigned utf8:1; unsigned buffered:4; unsigned main_filter_need_in_memory:1; unsigned filter_need_in_memory:1; unsigned filter_need_temporary:1; unsigned allow_ranges:1;#if (NGX_STAT_STUB) unsigned stat_reading:1; unsigned stat_writing:1;#endif unsigned subrequests:8; /* used to parse HTTP headers */ ngx_uint_t state; u_char *uri_start; u_char *uri_end; u_char *uri_ext; u_char *args_start; u_char *request_start; u_char *request_end; u_char *method_end; u_char *schema_start; u_char *schema_end; u_char *host_start; u_char *host_end; u_char *port_start; u_char *port_end; u_char *header_name_start; u_char *header_name_end; u_char *header_start; u_char *header_end; unsigned http_minor:16; unsigned http_major:16; ngx_uint_t header_hash; ngx_uint_t lowcase_index; u_char lowcase_header[NGX_HTTP_LC_HEADER_LEN];};extern ngx_http_header_t ngx_http_headers_in[];extern ngx_http_header_out_t ngx_http_headers_out[];#endif /* _NGX_HTTP_REQUEST_H_INCLUDED_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -