Today Jun 8, 2013 at 02:30 SenatoR wrote: > Столкнулся с непонятной мне проблемой. nginx 1.4.1. Имеется связка nginx + > php-fpm. Возникла необходимость в одном домене заблокировать несколько ip > адресов для режима post. Написал вот такой листинг: > > location ~ \.php$ { > if ($request_method = POST) { > return 412; > } > error_page 412 = @check;
> } > > location @check > { > deny ip1; > deny ip2; > error_page 403 http://sitename.ru/error_blocked.html; > } > Однако, все равно мне выводится стандартное уведомление об ошибке. Я > пробовал вместо адреса с http указывать новый location: > error_page 403 @why; > Не работает! Пробовал указывать новый путь: > error_page 403 /error_403.html; > не работает!!!! > > В связи с этим вопросы: > 1) Перенаправление на проверку явно сделано не самым удобным образом (через > пененаправление error_page 412), может кто-то подскажет способ лучше? http://nginx.org/r/limit_except/ru Вначале deny тем некоторым IP, а после allow all. И error_page 403 /error_403.html в этом location. > 2) Что я делаю не так с error_page? Мне нужно, чтобы он открыл заготовленный > файл с расшифровкой "почему нельзя" и все. Несколько перенаправлений через error_page по умолчанию запрещены: http://nginx.org/r/recursive_error_pages/ru -- WNGS-RIPE _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru