Весенний авитаминоз с локейшенами

vitcool nginx-forum на forum.nginx.org
Вс Мар 26 12:25:52 UTC 2017


Добрый день!

Подскажите как мне организовать локейшены для реализации следующей логики

ключевой паттерн на который сейчас используется
location ~* \.(png|gif|jpg|jpeg)$ {
# запрос проксируется на бекенд где происходит разбор ситуации и принимается

# решение куда проксировать дальше и что делать. 
# хочется сделать чтобы основная 
# логика отрабатывалась сразу на фронте nginx
}



логика которая требуется

(вариант 1) 
запрос /yyy/xxx/ggg/a1b2c3%20d4.jpg - надо проксировать на бекенд№1 as is +
использовать кэш nginx
http://backend1:port/yyy/xxx/ggg/a1b2c3%20d4.jpg

(вариант 2) 
запрос /yyy/xxx/ggg/a1b2c3%20d4.jpg?param1=value1 - надо проксировать на
бекенд№1 + использовать кэш nginx
http://backend1:port/yyy/xxx/ggg/a1b2c3%20d4.jpg 
(т.е. игнорируем все параметры отличные от param2, param3, param4 - см
ниже)


(вариант 3)
запрос  /yyy/xxx/ggg/a1b2c3%20d4.jpg?param2=value2 - надо проксировать на
бекенд№2  + использовать кэш nginx
http://backend2:port/blabla/?source=http://static_server/yyy/xxx/ggg/a1b2c3%20d4.jpg&param2=value2


(вариант 4) 
запрос  /yyy/xxx/ggg/a1b2c3%20d4.jpg?param3=value3 - надо проксировать на
бекенд№2  + использовать кэш nginx
http://backend2:port/blabla/?source=http://static_server/yyy/xxx/ggg/a1b2c3%20d4.jpg&param3=value3


(вариант 5) 
запрос  /yyy/xxx/ggg/a1b2c3%20d4.jpg?param4=value4 - надо проксировать на
бекенд№3  + использовать кэш nginx
http://backend3:port/blabla/?source=http://static_server/yyy/xxx/ggg/a1b2c3%20d4.jpg&param4=value4

Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273212,273212#msg-273212



Подробная информация о списке рассылки nginx-ru