proxy_pass and $content_type
Igor Sysoev
is at rambler-co.ru
Tue Sep 15 16:12:40 MSD 2009
On Tue, Sep 15, 2009 at 01:40:06PM +0200, Cedric Jeanneret wrote:
> Hello all,
>
> We're wanting to use nginx as a proxy between a varnish and a S3 storage. We're using debian lenny, nginx version is 0.6.32-3.
>
> What we're dowing:
>
> server {
> location / {
> proxy_pass ...
> if ($content_type !~* "image/") {
> return 403
> }
> }
> }
>
> What happens ? well, 403 for all. We put in log "$content_type", and saw it's set to "-".
>
> Is it normal? Is there another way to filter by content type?
> Our final goal is:
> S3 sends either the file if it can find it, or an XML (so a content_type "text/xml" or smth like that). We don't want to give the xml, as it contains S3 bucket name...
>
> If any of you has an idea/fixe/workaround...
You should use 0.7.62, because
1) it can cache content instead of varnish,
2) it has image_filter, that tests that response has valid GIF, PNG, JPEG:
location / {
proxy_pass ...
image_filter test;
error_page 415 =403 /403.html;
}
location /403.html {
root path/to/page;
}
--
Igor Sysoev
http://sysoev.ru/en/
More information about the nginx
mailing list