comparison src/http/ngx_http_upstream.h @ 348:e10168d6e371 NGINX_0_6_18

nginx 0.6.18 *) Change: now the ngx_http_userid_module adds start time microseconds to the cookie field contains a pid value. *) Change: now the full request line instead of URI only is written to error_log. *) Feature: variables support in the "proxy_pass" directive. *) Feature: the "resolver" and "resolver_timeout" directives. *) Feature: now the directive "add_header last-modified ''" deletes a "Last-Modified" response header line. *) Bugfix: the "limit_rate" directive did not allow to use full throughput, even if limit value was very high.
author Igor Sysoev <http://sysoev.ru>
date Tue, 27 Nov 2007 00:00:00 +0300
parents 10cc350ed8a1
children b743d290eb3b
comparison
equal deleted inserted replaced
347:d53199b68e17 348:e10168d6e371
136 ngx_hash_t hide_headers_hash; 136 ngx_hash_t hide_headers_hash;
137 ngx_array_t *hide_headers; 137 ngx_array_t *hide_headers;
138 ngx_array_t *pass_headers; 138 ngx_array_t *pass_headers;
139 139
140 ngx_str_t schema; 140 ngx_str_t schema;
141 ngx_str_t uri;
142 ngx_str_t location;
143 ngx_str_t url; /* used in proxy_rewrite_location */
144 141
145 ngx_array_t *store_lengths; 142 ngx_array_t *store_lengths;
146 ngx_array_t *store_values; 143 ngx_array_t *store_values;
147 144
148 signed store:2; 145 signed store:2;
197 194
198 ngx_array_t cache_control; 195 ngx_array_t cache_control;
199 } ngx_http_upstream_headers_in_t; 196 } ngx_http_upstream_headers_in_t;
200 197
201 198
199 typedef struct {
200 ngx_str_t host;
201 in_port_t port;
202 ngx_uint_t naddrs;
203 in_addr_t *addrs;
204 ngx_resolver_ctx_t *ctx;
205 } ngx_http_upstream_resolved_t;
206
207
202 struct ngx_http_upstream_s { 208 struct ngx_http_upstream_s {
203 ngx_peer_connection_t peer; 209 ngx_peer_connection_t peer;
204 210
205 ngx_event_pipe_t *pipe; 211 ngx_event_pipe_t *pipe;
206 212
210 ngx_chain_writer_ctx_t writer; 216 ngx_chain_writer_ctx_t writer;
211 217
212 ngx_http_upstream_conf_t *conf; 218 ngx_http_upstream_conf_t *conf;
213 219
214 ngx_http_upstream_headers_in_t headers_in; 220 ngx_http_upstream_headers_in_t headers_in;
221
222 ngx_http_upstream_resolved_t *resolved;
215 223
216 ngx_buf_t buffer; 224 ngx_buf_t buffer;
217 size_t length; 225 size_t length;
218 226
219 ngx_chain_t *out_bufs; 227 ngx_chain_t *out_bufs;
233 ngx_int_t (*rewrite_redirect)(ngx_http_request_t *r, 241 ngx_int_t (*rewrite_redirect)(ngx_http_request_t *r,
234 ngx_table_elt_t *h, size_t prefix); 242 ngx_table_elt_t *h, size_t prefix);
235 243
236 ngx_msec_t timeout; 244 ngx_msec_t timeout;
237 245
246 ngx_http_upstream_state_t *state;
247
238 ngx_str_t method; 248 ngx_str_t method;
239 249 ngx_str_t schema;
240 ngx_http_upstream_state_t *state;
241
242 ngx_str_t uri; 250 ngx_str_t uri;
243 251
244 ngx_http_cleanup_pt *cleanup; 252 ngx_http_cleanup_pt *cleanup;
245 253
246 unsigned store:1; 254 unsigned store:1;
247 unsigned cacheable:1; 255 unsigned cacheable:1;
248 unsigned accel:1; 256 unsigned accel:1;
257 unsigned ssl:1;
249 258
250 unsigned buffering:1; 259 unsigned buffering:1;
251 260
252 unsigned request_sent:1; 261 unsigned request_sent:1;
253 unsigned header_sent:1; 262 unsigned header_sent:1;