Quantcast
Viewing all articles
Browse latest Browse all 3102

Re: Не записывается access log (no replies)

Hello!

On Thu, Apr 25, 2013 at 11:05:30AM -0400, X-Thief wrote:

> Пытаюсь сделать чтоб 444 http ошибки записывались в другой лог файл.
>
> Делал так:
>
> error_page 444 = @log444;
> location @log444 {
> access_log log444.txt;
> }
>
> Файл создался, но ничего в него не записывается. Ошибки по прежнему пишутся
> в прежний стандартный лог-файл.
>
> Чуть ниже у меня условия, где выдаются такие ошибки. Эти условия находятся
> как и в location { так и просто в server {
>
> Вроде этого:
> if ($something) {
> return 444;
> }
>
> Может кто что посоветовать?
> Спасибо.

Возврат 444 ошибки - это способ сказать nginx'у, что соединение
надо закрыть. До директивы error_page в этом случае дело не
доходит.

Если хочется, чтобы nginx закрыл соединение, и при этом отдельно
залогировал соответствующий запрос - то можно сделать это, перейдя
в нужный location перед возвратом 444, как-то так:

error_page 418 = @close;

if ($something) {
return 418;
}

location @close {
access_log /path/to/444.log;
return 444;
}

--
Maxim Dounin
http://nginx.org/en/donation.html

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Viewing all articles
Browse latest Browse all 3102

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>