С Nginx очень слабо знаком прошу помощи =(
Есть ссылки вида
img.domain.ru/o/99/image.jpg
img.domain.ru/o/99/image.jpg?width=500&height=500
В конфигурации я пытаюсь сделать так что если переданы GET параметры width и height то обрезать картинку, если их нет то отобразить оригинальное изображение.
server {
listen 80;
server_name img.domain.ru;
location ~* \.(gif|jpg|png)$ {
proxy_pass http://imageserver;
image_filter crop $arg_width $arg_height;
error_page 415 = /empty;
}
# Error handler
location = /empty {
empty_gif; # Respond with empty image
}
}
# Backend image server
server {
listen 8082;
server_name localhost;
root /var/www/img.domain.ru;
rewrite ^/(.*)$ /$1 last;
}
# Upstream
upstream imageserver {
server localhost:8082;
}
При такой конфигурации картинки с GET запросом отображаются, без него нет так как $arg_width и $arg_height не определены. Пытался с if сделать условия но в логах была ошибка ("image_filter" directive is not allowed here in)
Как правильно обработать такие запросы?