Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#654 closed defect (invalid)

Nginx directives ignored

Reported by: Laura Zilles Owned by:
Priority: minor Milestone:
Component: nginx-core Version: 1.7.x
Keywords: Cc:
uname -a: Linux ds83-169-49-130 3.2.0-38-generic #61-Ubuntu SMP Tue Feb 19 12:18:21 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
nginx -V: nginx version: nginx/1.7.7.2 Gryphon
nginx origin: http://nginx-win.ecsds.eu/ Build October 15, 2014
TLS SNI support enabled
configure arguments: --with-cc=cl --builddir=objs --prefix= --conf-path=conf/nginx.conf --pid-path=logs/nginx.pid --http
-log-path=logs/access.log --error-log-path=logs/error.log --sbin-path=nginx.exe --http-client-body-temp-path=temp/client
_body_temp --http-proxy-temp-path=temp/proxy_temp --http-fastcgi-temp-path=temp/fastcgi_temp --http-scgi-temp-path=temp/
scgi_temp --http-uwsgi-temp-path=temp/uwsgi_temp --with-cc-opt=-DFD_SETSIZE=32768 --with-pcre=objs/lib/pcre-8.36 --with-
zlib=objs/lib/zlib-1.2.8 --with-openssl=objs/lib/openssl-1.0.1j --with-select_module --with-http_realip_module --with-ht
tp_addition_module --with-http_sub_module --with-http_dav_module --with-http_stub_status_module --with-http_flv_module -
-with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-ht
tp_secure_link_module --with-http_auth_request_module --with-mail --with-openssl-opt=enable-tlsext --with-mail_ssl_modul
e --with-http_ssl_module --with-http_spdy_module --with-ipv6 --add-module=objs/lib/naxsi-module/naxsi_src --add-module=o
bjs/lib/nginx-rtmp-module --add-module=objs/lib/ngx_devel_kit --add-module=objs/lib/echo-nginx-module --add-module=objs/
lib/set-misc-nginx-module --add-module=objs/lib/form-input-nginx-module --add-module=objs/lib/encrypted-session-nginx-mo
dule --add-module=objs/lib/lua-nginx-module --add-module=objs/lib/lua-upstream-nginx-module --add-module=objs/lib/header
s-more-nginx-module --add-module=objs/lib/array-var-nginx-module --add-module=objs/lib/ngx_http_substitutions_filter_mod
ule --add-module=objs/lib/ngx_http_lower_upper_case --add-module=objs/lib/nginx-limit-traffic-rate-module --add-module=o
bjs/lib/nginx-auth-ldap2 --add-module=objs/lib/ngx_http_rdns_module --add-module=objs/lib/nginx_ajp_module --add-module=
objs/lib/ngx_upstream_jdomain

Description

HTTP Post requests: Nginx directives ignored when using proxy_http_version 1.1 and Orion Webserver. Other Proxies (e.g. Apache) in combination with Orion work fine.

We use minimal nginx.conf:
events {
}

http {

server {

server_name localhost;
proxy_http_version 1.1;


location / {

proxy_pass http://localhost:9000/;

}

}

}

Response header for GET:
HTTP/1.1 200 OK
Server: nginx/1.7.7.2 Gryphon
Date: Mon, 03 Nov 2014 13:28:42 GMT
Content-Type: text/html; charset=ISO-8859-1
Transfer-Encoding: chunked
Connection: keep-alive
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Cache-Control: private, post-check=0, pre-check=0, max-age=0
Pragma: no-cache

Response header for POST:
HTTP/1.1 200 OK
Date: Mon, 03 Nov 2014 13:30:31 GMT
Server: Orion/2.0.8
Connection: Close
Content-Type: text/html; charset=ISO-8859-1
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Cache-Control: private, post-check=0, pre-check=0, max-age=0
Pragma: no-cache
Transfer-Encoding: chunked

Change History (8)

comment:1 by Valentin V. Bartenev, 6 years ago

Could you explain what directives are ignored?
Please note, that your POST response is returned by another web server.

comment:2 by Laura Zilles, 6 years ago

Server header should also be
Server: nginx/1.7.7.2 Gryphon

Following directive is ignored:
proxy_hide_header Content-Location;
(not contained in example above)

We use nginx as proxy to Orion. Why should POST response be returned by Orion rather than nginx when GET response is not?

comment:3 by Valentin V. Bartenev, 6 years ago

Resolution: invalid
Status: newclosed

Because client sends POST request directly to Orion server, and nginx isn't involved at all. You should check your client application.

comment:4 by Laura Zilles, 6 years ago

Sorry, but that is not the case. I do get nginx access logs for those POST requests, which is why I still think it is an nginx issue.

comment:5 by Valentin V. Bartenev, 6 years ago

The response that you have provided clearly isn't from nginx. Even the order of headers is different from what nginx produces. Most likely you have seen some other POST requests in access log.

Last edited 6 years ago by Valentin V. Bartenev (previous) (diff)

comment:6 by Laura Zilles, 6 years ago

I agree that response seems to be provided by Orion Server. I simply send GET/POST request via browser to nginx running on localhost. There is no other client communicating with nginx.

I uploaded a sample windows configuration (nginx and orion installation) with my setting described in README file:
https://drive.google.com/file/d/0ByzX07KHlwVfd19RdHpxbE5teWM/view?usp=sharing
(pwd: nginx)

I hope you can reproduce the described behaviour.
Thanks.

in reply to:  6 comment:7 by Valentin V. Bartenev, 6 years ago

Are you able to reproduce the problem with the original nginx provided by nginx.org? We don't support nginx/1.7.7.2 Gryphon, and seems it's buggy.

comment:8 by Laura Zilles, 6 years ago

Yes, I can reproduce problem with nginx provided by nginx.org. In fact, the example I provided above already contains the newest version from nginx.org

Note: See TracTickets for help on using tickets.