LINUX.ORG.RU
решено ФорумAdmin

Редирект в nginx


0

1

Привет! Подскажите, пожалйста, как сделать перенаправление с одного сервера (в случае возвращения ошибки) на другой. Есть nginx и сервера Oracle Service Bus (OSB). Конфигурация примерно выглядит так:

есть апстримы с серверами:

upstream backend_s1 {
                server сервер1:3010;
                server сервер2:3010;

upstream backend_s2 {
                server сервер2:3010;
                server сервер3:3010;

Есть локейшены:

 location ~ /gateway/services/(SID0000010|SID0003928|SID0003929|SID0003930|SID0003931|SID0003932) {
                        proxy_read_timeout 60s;
                        set $var «$request_method?$args»;
                        if ($var ~* ^GET\?wsdl(=)?) {
                                rewrite ^/(.*)$ /$1/wsdl? permanent;
                        }
     ляляляляля
                        proxy_pass http://backend_s1;
                        proxy_redirect off;

location ~ /gateway/services/(SID0000010|SID0003928|SID0003929|SID0003930|SID0003931|SID0003932) {
                        proxy_read_timeout 60s;
                        set $var «$request_method?$args»;
                        if ($var ~* ^GET\?wsdl(=)?) {
                                rewrite ^/(.*)$ /$1/wsdl? permanent;
                        }
     ляляляляля
                        proxy_pass http://backend_s2;
                        proxy_redirect off;

предположим что на первый локейшен приходит запрос, на него возвращается ошибка со статусом 500. Что нужно прописать, чтобы этот запрос перенаправился на другой апстрим?



Последнее исправление: beastie (всего исправлений: 3)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.