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?