Forum: NGINX proxy_pass of PUT with no Content_length header returns 411

Posted by nickpalmer (Guest)
on 2013-03-20 23:09
(Received via mailing list)
I am having trouble with proxy_pass and PUT without a Content-Length 
header
returning a 411 error.

# curl -XPUT http://localhost:8080/
<html>
<head><title>411 Length Required</title></head>
<body bgcolor="white">
<center><h1>411 Length Required</h1></center>
<hr><center>nginx/1.1.19</center>
</body>
</html>
# touch temp
# curl -X PUT http://localhost:8080/ -T temp
{"response": "ok"}
#

Relevant configuration:

# Proxy to Backend Server
server {
  listen localhost:8080;

  location / {
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass http://backend_server;
  }
}

I found this post which seems to be the same problem:
http://forum.nginx.org/read.php?2,72279,72279#msg-72279

Is there a way to get nginx to proxy PUT requests WITHOUT a 
Content-Length
header?
Does a newer version of nginx NOT suffer from this limitation?

Thanks,
~ Nick

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?2,237607,237607#msg-237607
Posted by Maxim Dounin (Guest)
on 2013-03-21 11:33
(Received via mailing list)
Hello!

On Wed, Mar 20, 2013 at 06:09:26PM -0400, nickpalmer wrote:

> </html>
>
> http://forum.nginx.org/read.php?2,72279,72279#msg-72279
>
> Is there a way to get nginx to proxy PUT requests WITHOUT a Content-Length
> header?
> Does a newer version of nginx NOT suffer from this limitation?

PUT requests without a Content-Length header (either using chunked
transfer encoding, or without a request body at all) are allowed
in nginx 1.3.9+.

--
Maxim Dounin
http://nginx.org/en/donation.html
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.