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: