Здравствуйте. http://nginx.org/en/docs/http/ngx_http_core_module.html#recursive_error_pages
23 августа 2015 г., 23:56 пользователь Vadim Osipov <nginx-fo...@nginx.us> написал: > Здравствуйте ! > > Скажите, пожалуйста, можно ли использовать несколько раз error_page для > перемещения по location-ам, если получаемый статус не является желаемым ? > Вот конфигурация (рабочая, но придуманная "от фонаря" для целей > тестирования): > > location /images { > set $memcached_key "$arg_mykey"; > memcached_pass localhost:11211; > error_page 404 502 504 @go_to_server; > } > > location @go_to_server { > proxy_pass http://localhost:8080; > error_page 400 @go_for_default; > } > > location @go_for_default { > set $memcached_key "default_key_$arg_mykey"; > memcached_pass localhost:11211; > error_page 404 502 502 @go_for_default_to_server; > } > > location @go_for_default_to_server { > proxy_pass http://localhost:8080/default/images; > return 400; > } > > Посылаю запрос на /images, если в memcached нету, то обрабатываю от него > статус, путем перенаправления запроса на сервер приложений. > Но вот что мне не удалось, так это обработать статус от сервера приложений > путем переброски запроса на другой location, чтобы, например как здесь, > сделать запрос к memcached за дефолтным значением (и опять на сервер > приложений в последний раз). > > Может быть то, что я хочу сделать > не так делается > или есть другая возможность за счет другой директивы > или в принципе такое нельзя сделать в nginx (только 1 раз от memcached -> > backend и за счет error_page) > ? > > P.S. > location @go_to_server { > proxy_pass http://localhost:8080; > error_page 400 @go_for_default; > } > самое интересное, что статус на клиент приходит 404. Даже если заменить на > error_page 400 = 200; > Получается, что 2ой раз использование error_page игнорируется ? > > Posted at Nginx Forum: > http://forum.nginx.org/read.php?21,261196,261196#msg-261196 > > _______________________________________________ > nginx-ru mailing list > nginx-ru@nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru -- WBR, Vadim Lazovskiy _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru