I’ve found a small issue with proxy_pass when passing urls that don’t
have a content-length field.
Nginx is adding a content-field length of 221183499 rather then just not
including the header.
The way to test this is to proxy pass something like an icecast stream
Kingsley
More on this…
Here are the differences, Original source
HTTP request sent, awaiting response…
HTTP/1.0 200 OK
Content-Type: audio/mpeg
icy-br:128
icy-genre:eclectic rock
icy-name:Radio Paradise - DJ-mixed modern & classic rock, world,
electronica & more - info: radioparadise.com
icy-notice1:
This stream requires Winamp
icy-notice2:SHOUTcast Distributed Network Audio Server/Linux
v1.9.7
icy-pub:0
icy-url:http://www.radioparadise.com
Server: Icecast 2.3.2
Cache-Control: no-cache
Proxy_passed
HTTP request sent, awaiting response…
HTTP/1.1 200 OK
Server: nginx/0.7.65
Date: Sat, 06 Feb 2010 05:16:40 GMT
Content-Type: audio/mpeg
Connection: keep-alive
Keep-Alive: timeout=3
icy-br: 128
icy-genre: eclectic rock
icy-name: Radio Paradise - DJ-mixed modern & classic rock, world,
electronica & more - info: radioparadise.com
icy-notice1:
This stream requires Winamp
icy-notice2: SHOUTcast Distributed Network Audio Server/Linux
v1.9.7
icy-pub: 0
icy-url: http://www.radioparadise.com
Cache-Control: no-cache
Content-Length: 221183499
Expires: Mon, 26 Jul 1997 05:00:00 GMT