ms-dred
@ms-dred
Вечно что то не то и что то не так...

Как передать в image_filter другой путь до картинки?

Подскажите можно ли как то передать в image_filter другой путь до картинки или что то другое придумать?
У меня есть 2 копии картинок, одна оригинальная другая уменьшенная, мне нужно сделать так что если высота изображения меньше 350px брать ее из папки /thumb/ для последующей ее обработки в image_filter, а не из папки original. Все ради того чтобы создавать маленькие копии с копий, а не обрабатывать большое изображение ради маленькой копии.

На бекенде я проверяю высоту и присваиваю картинке соответствующий route для nginx, если высота меньше 350px, то к ссылке на картинку я добавляю GET запрос (route=resizethumb)

Пример url: /original/99/image.jpg?w=300&h=200&route=resizethumb
И нужно чтобы по url выше бралась картинки из /thumb/99/ без изменения URL

В конфиге сделал следующее

location ~* \.(gif|jpg|png)$ {
    if ($arg_route = "resizethumb") { return 410; }
    error_page 410 = @img_resize;
}

location @img_resize {
    # Тут берутся картинки из папки /original/ по ссылке приведенной выше
    # но мне нужно взять картинку из папки /thumb/ и передать ее в image_filter
    image_filter resize - $arg_h;
}


Как можно это осуществить? Можно ли изменить место расположения файла до обработке через image_filter?
  • Вопрос задан
  • 155 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы