Merge of r4698: X-Forwarded-For conditionals.
Fixed compile-time conditionals used to detect if X-Forwarded-For support is needed. Note: compatibility shims were added during merge to avoid possible breakage of 3rd party modules. At least cache purge module was broken by the original commit, as it used to rely on NGX_HTTP_PROXY define.
This commit is contained in:
parent
cbdfd188c8
commit
d39b505182
|
@ -223,6 +223,7 @@ fi
|
|||
|
||||
if [ $HTTP_REALIP = YES ]; then
|
||||
have=NGX_HTTP_REALIP . auto/have
|
||||
have=NGX_HTTP_X_FORWARDED_FOR . auto/have
|
||||
HTTP_MODULES="$HTTP_MODULES $HTTP_REALIP_MODULE"
|
||||
HTTP_SRCS="$HTTP_SRCS $HTTP_REALIP_SRCS"
|
||||
fi
|
||||
|
@ -234,11 +235,13 @@ fi
|
|||
|
||||
if [ $HTTP_GEO = YES ]; then
|
||||
have=NGX_HTTP_GEO . auto/have
|
||||
have=NGX_HTTP_X_FORWARDED_FOR . auto/have
|
||||
HTTP_MODULES="$HTTP_MODULES $HTTP_GEO_MODULE"
|
||||
HTTP_SRCS="$HTTP_SRCS $HTTP_GEO_SRCS"
|
||||
fi
|
||||
|
||||
if [ $HTTP_GEOIP = YES ]; then
|
||||
have=NGX_HTTP_X_FORWARDED_FOR . auto/have
|
||||
HTTP_MODULES="$HTTP_MODULES $HTTP_GEOIP_MODULE"
|
||||
HTTP_SRCS="$HTTP_SRCS $HTTP_GEOIP_SRCS"
|
||||
fi
|
||||
|
@ -274,6 +277,7 @@ fi
|
|||
|
||||
if [ $HTTP_PROXY = YES ]; then
|
||||
have=NGX_HTTP_PROXY . auto/have
|
||||
have=NGX_HTTP_X_FORWARDED_FOR . auto/have
|
||||
#USE_MD5=YES
|
||||
HTTP_MODULES="$HTTP_MODULES $HTTP_PROXY_MODULE"
|
||||
HTTP_DEPS="$HTTP_DEPS $HTTP_PROXY_DEPS"
|
||||
|
|
|
@ -138,7 +138,7 @@ ngx_http_header_t ngx_http_headers_in[] = {
|
|||
{ ngx_string("Keep-Alive"), offsetof(ngx_http_headers_in_t, keep_alive),
|
||||
ngx_http_process_header_line },
|
||||
|
||||
#if (NGX_HTTP_PROXY || NGX_HTTP_REALIP || NGX_HTTP_GEO)
|
||||
#if (NGX_HTTP_X_FORWARDED_FOR)
|
||||
{ ngx_string("X-Forwarded-For"),
|
||||
offsetof(ngx_http_headers_in_t, x_forwarded_for),
|
||||
ngx_http_process_header_line },
|
||||
|
|
|
@ -137,6 +137,13 @@
|
|||
#define NGX_HTTP_COPY_BUFFERED 0x04
|
||||
|
||||
|
||||
#if (NGX_HTTP_PROXY || NGX_HTTP_REALIP || NGX_HTTP_GEO)
|
||||
#ifndef NGX_HTTP_X_FORWARDED_FOR
|
||||
#define NGX_HTTP_X_FORWARDED_FOR 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
typedef enum {
|
||||
NGX_HTTP_INITING_REQUEST_STATE = 0,
|
||||
NGX_HTTP_READING_REQUEST_STATE,
|
||||
|
@ -192,7 +199,7 @@ typedef struct {
|
|||
|
||||
ngx_table_elt_t *keep_alive;
|
||||
|
||||
#if (NGX_HTTP_PROXY || NGX_HTTP_REALIP || NGX_HTTP_GEO)
|
||||
#if (NGX_HTTP_X_FORWARDED_FOR)
|
||||
ngx_table_elt_t *x_forwarded_for;
|
||||
#endif
|
||||
|
||||
|
|
|
@ -134,7 +134,7 @@ static ngx_http_variable_t ngx_http_core_variables[] = {
|
|||
offsetof(ngx_http_request_t, headers_in.via), 0, 0 },
|
||||
#endif
|
||||
|
||||
#if (NGX_HTTP_PROXY || NGX_HTTP_REALIP)
|
||||
#if (NGX_HTTP_X_FORWARDED_FOR)
|
||||
{ ngx_string("http_x_forwarded_for"), NULL, ngx_http_variable_header,
|
||||
offsetof(ngx_http_request_t, headers_in.x_forwarded_for), 0, 0 },
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue