@MegaLoadOn
#!/bin/bash

Как переписать такой запрос к nginx?

Использую модуль ngx_small_light для ресайза изображений (https://github.com/cubicdaiya/ngx_small_light)

Модуль работает в 2х вариантах. Либо:
small_light on;
location ~ small_light[^/]*/(.+)$ {
    set $file $1;
    rewrite ^ /$file;
}

Оригинал тут - $host:$port/img/image.jpg
Ресайз тут - $host:$port/small_light(dw=300,dh=300)/img/image.jpg

Либо:
small_light on;
small_light_pattern_define msize dw=300,dh=300,da=l,q=95,e=imagemagick,jpeghint=y;
location ~ small_light[^/]*/(.+)$ {
        set $file $1;
        rewrite ^ /$file;
    }

Оригинал тут - $host:$port/img/image.jpg
Ресайз тут - $host:$port/small_light(p=msize)/img/image.jpg

Все работает ок.

Как переписать, что бы ресайз можно было получать, пройдя по:
$host:$port/300x300/img/image.jpg

Ширина 300 и высота 300 взяты для примера. Они могут быть любыми.
  • Вопрос задан
  • 232 просмотра
Решения вопроса 1
@dodo512
Переключить на использование GET параметров.
small_light_getparam_mode on;
rewrite ^/(\d+)x(\d+)(/img/.+) $3?dw=$1&dh=$2;
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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