Re: Проблема с error page
Oleksandr V. Typlyns'kyi
wangsamp at gmail.com
Sat Jun 8 08:01:15 UTC 2013
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