📄 ngx_http_request.h
字号:
/* * Copyright (C) Igor Sysoev */#ifndef _NGX_HTTP_REQUEST_H_INCLUDED_#define _NGX_HTTP_REQUEST_H_INCLUDED_#define NGX_HTTP_MAX_URI_CHANGES 10#define NGX_HTTP_MAX_SUBREQUESTS 50/* must be 2^n */#define NGX_HTTP_LC_HEADER_LEN 32#define NGX_HTTP_DISCARD_BUFFER_SIZE 4096#define NGX_HTTP_LINGERING_BUFFER_SIZE 4096#define NGX_HTTP_VERSION_9 9#define NGX_HTTP_VERSION_10 1000#define NGX_HTTP_VERSION_11 1001#define NGX_HTTP_UNKNOWN 0x0001#define NGX_HTTP_GET 0x0002#define NGX_HTTP_HEAD 0x0004#define NGX_HTTP_POST 0x0008#define NGX_HTTP_PUT 0x0010#define NGX_HTTP_DELETE 0x0020#define NGX_HTTP_MKCOL 0x0040#define NGX_HTTP_COPY 0x0080#define NGX_HTTP_MOVE 0x0100#define NGX_HTTP_OPTIONS 0x0200#define NGX_HTTP_PROPFIND 0x0400#define NGX_HTTP_PROPPATCH 0x0800#define NGX_HTTP_LOCK 0x1000#define NGX_HTTP_UNLOCK 0x2000#define NGX_HTTP_TRACE 0x4000#define NGX_HTTP_CONNECTION_CLOSE 1#define NGX_HTTP_CONNECTION_KEEP_ALIVE 2#define NGX_NONE 1#define NGX_HTTP_PARSE_HEADER_DONE 1#define NGX_HTTP_CLIENT_ERROR 10#define NGX_HTTP_PARSE_INVALID_METHOD 10#define NGX_HTTP_PARSE_INVALID_REQUEST 11#define NGX_HTTP_PARSE_INVALID_09_METHOD 12#define NGX_HTTP_PARSE_INVALID_HEADER 13#define NGX_HTTP_ZERO_IN_URI 1#define NGX_HTTP_SUBREQUEST_IN_MEMORY 2#define NGX_HTTP_OK 200#define NGX_HTTP_CREATED 201#define NGX_HTTP_NO_CONTENT 204#define NGX_HTTP_PARTIAL_CONTENT 206#define NGX_HTTP_SPECIAL_RESPONSE 300#define NGX_HTTP_MOVED_PERMANENTLY 301#define NGX_HTTP_MOVED_TEMPORARILY 302#define NGX_HTTP_NOT_MODIFIED 304#define NGX_HTTP_BAD_REQUEST 400#define NGX_HTTP_UNAUTHORIZED 401#define NGX_HTTP_FORBIDDEN 403#define NGX_HTTP_NOT_FOUND 404#define NGX_HTTP_NOT_ALLOWED 405#define NGX_HTTP_REQUEST_TIME_OUT 408#define NGX_HTTP_CONFLICT 409#define NGX_HTTP_LENGTH_REQUIRED 411#define NGX_HTTP_PRECONDITION_FAILED 412#define NGX_HTTP_REQUEST_ENTITY_TOO_LARGE 413#define NGX_HTTP_REQUEST_URI_TOO_LARGE 414#define NGX_HTTP_UNSUPPORTED_MEDIA_TYPE 415#define NGX_HTTP_RANGE_NOT_SATISFIABLE 416/* Our own HTTP codes *//* The special code to close connection without any response */#define NGX_HTTP_CLOSE 444#define NGX_HTTP_OWN_CODES 495#define NGX_HTTPS_CERT_ERROR 495#define NGX_HTTPS_NO_CERT 496/* * We use the special code for the plain HTTP requests that are sent to * HTTPS port to distinguish it from 4XX in an error page redirection */#define NGX_HTTP_TO_HTTPS 497/* 498 is the canceled code for the requests with invalid host name *//* * HTTP does not define the code for the case when a client closed * the connection while we are processing its request so we introduce * own code to log such situation when a client has closed the connection * before we even try to send the HTTP header to it */#define NGX_HTTP_CLIENT_CLOSED_REQUEST 499#define NGX_HTTP_INTERNAL_SERVER_ERROR 500#define NGX_HTTP_NOT_IMPLEMENTED 501#define NGX_HTTP_BAD_GATEWAY 502#define NGX_HTTP_SERVICE_UNAVAILABLE 503#define NGX_HTTP_GATEWAY_TIME_OUT 504#define NGX_HTTP_INSUFFICIENT_STORAGE 507#define NGX_HTTP_LOWLEVEL_BUFFERED 0xf0#define NGX_HTTP_WRITE_BUFFERED 0x10#define NGX_HTTP_GZIP_BUFFERED 0x20#define NGX_HTTP_SSI_BUFFERED 0x01#define NGX_HTTP_SUB_BUFFERED 0x02#define NGX_HTTP_COPY_BUFFERED 0x04typedef enum { NGX_HTTP_INITING_REQUEST_STATE = 0, NGX_HTTP_READING_REQUEST_STATE, NGX_HTTP_PROCESS_REQUEST_STATE, NGX_HTTP_CONNECT_UPSTREAM_STATE, NGX_HTTP_WRITING_UPSTREAM_STATE, NGX_HTTP_READING_UPSTREAM_STATE, NGX_HTTP_WRITING_REQUEST_STATE, NGX_HTTP_LINGERING_CLOSE_STATE, NGX_HTTP_KEEPALIVE_STATE} ngx_http_state_e;typedef struct { ngx_str_t name; ngx_uint_t offset; ngx_http_header_handler_pt handler;} ngx_http_header_t;typedef struct { ngx_str_t name; ngx_uint_t offset;} ngx_http_header_out_t;typedef struct { ngx_list_t headers; ngx_table_elt_t *host; ngx_table_elt_t *connection; ngx_table_elt_t *if_modified_since; ngx_table_elt_t *user_agent; ngx_table_elt_t *referer; ngx_table_elt_t *content_length; ngx_table_elt_t *content_type; ngx_table_elt_t *range; ngx_table_elt_t *if_range; ngx_table_elt_t *transfer_encoding;#if (NGX_HTTP_GZIP) ngx_table_elt_t *accept_encoding; ngx_table_elt_t *via;#endif ngx_table_elt_t *authorization; ngx_table_elt_t *keep_alive;#if (NGX_HTTP_PROXY || NGX_HTTP_REALIP) ngx_table_elt_t *x_forwarded_for;#endif#if (NGX_HTTP_REALIP) ngx_table_elt_t *x_real_ip;#endif#if (NGX_HTTP_HEADERS) ngx_table_elt_t *accept; ngx_table_elt_t *accept_language;#endif#if (NGX_HTTP_DAV) ngx_table_elt_t *depth; ngx_table_elt_t *destination; ngx_table_elt_t *overwrite; ngx_table_elt_t *date;#endif ngx_str_t user; ngx_str_t passwd; ngx_array_t cookies; size_t host_name_len; off_t content_length_n; time_t keep_alive_n; unsigned connection_type:2; unsigned msie:1; unsigned msie4:1; unsigned opera:1; unsigned gecko:1; unsigned konqueror:1;} ngx_http_headers_in_t;typedef struct { ngx_list_t headers; ngx_uint_t status; ngx_str_t status_line; ngx_table_elt_t *server; ngx_table_elt_t *date; ngx_table_elt_t *content_length; ngx_table_elt_t *content_encoding; ngx_table_elt_t *location; ngx_table_elt_t *refresh; ngx_table_elt_t *last_modified; ngx_table_elt_t *content_range; ngx_table_elt_t *accept_ranges; ngx_table_elt_t *www_authenticate; ngx_table_elt_t *expires; ngx_table_elt_t *etag; ngx_str_t *override_charset; size_t content_type_len; ngx_str_t content_type; ngx_str_t charset; ngx_array_t cache_control; off_t content_length_n; time_t date_time; time_t last_modified_time;} ngx_http_headers_out_t;typedef void (*ngx_http_client_body_handler_pt)(ngx_http_request_t *r);typedef struct { ngx_temp_file_t *temp_file; ngx_chain_t *bufs; ngx_buf_t *buf; off_t rest;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -