nginx changes the hostname of proxy_pass into ip address unwantedly
willchu@gmail.com
nginx-forum at nginx.us
Wed Dec 2 01:42:43 UTC 2015
I have configured nginx to use mod_zip to zip up multiple files.
I also have configured nginx so that it proxies to s3 when our server gets a
request to /images.
location /p/ {
proxy_pass http://bucket-name.s3.amazonaws.com;
}
When I access a file via < server >/images/foo.png, everything works great.
However, when I try using mod_zip, the http://bucket-name.s3.amazonaws.com
gets rewritten to an ip address
http://54.231.176.194:80/foo.png
S3 needs the bucket-name in the url and gives me a NoSuchBucket error when I
try using the ip address
I get the following error
2015/12/01 01:37:08 [error] 14955#0: *16 mod_zip: a subrequest returned 400,
aborting... while reading response header from upstream, client:
172.31.10.100, server: convoygarage.com, request: "GET /api/get_zipfile
HTTP/1.1", subrequest: "/p/foo.png", upstream: "http://
54.231.176.194:80/foo.png", host: "convoygarage.com"
Why is nginx or mod_zip rewriting the hostname portion of my s3 URL into an
ip address?
Posted at Nginx Forum: https://forum.nginx.org/read.php?2,263199,263199#msg-263199
More information about the nginx
mailing list