Почему записи в access.log могут содержать пустой remote addr ?
Maxim Dounin
mdounin на mdounin.ru
Ср Янв 26 02:32:17 UTC 2022
Hello!
On Tue, Jan 25, 2022 at 06:39:51PM +0300, Иван wrote:
> Сходу, если идея, то IP адреса может не быть, если запрос приходит в
> nginx через unix-сокет. Проверьте все ваши listen'ы или дайте nginx -T.
Для unix-сокетов будет строка "unix:" (и путь, если клиентский
сокет забинжен).
> 25.01.2022 11:21, Ilya Evseev пишет:
> > Дано: nginx 1.18.0-0ubuntu1.2 и access_log по умолчанию.
> >
> > Проблема: некоторые записи в access.log содержат пустой IP клиента.
> >
> > Примеры (обе строки начинаются с пробела, фактические запросы заменил на
> > "..."):
> >
> > - - [25/Jan/2022:07:56:46 +0300] "GET /... HTTP/1.1" 410 198 "-"
> > "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like
> > Gecko) Chrome/97.0.4692.99 Safari/537.36"
> > - - [25/Jan/2022:08:01:14 +0300] "GET /... HTTP/1.1" 101 2 "-" "Mozilla/5.0
> > (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
> > Chrome/97.0.4692.71 Safari/537.36"
> >
> > Как такое может быть?
> > remote_addr в настройках не переопределяется, set_real_ip_from не
> > используется.
Как можно получить пробел - лично я не представляю. Для начала я
бы внимательно посмотрел на то, как именно сконфигурировано
логгирование (читай: действительно ли по умолчанию, или есть
нюансы), и нет ли сторонних модулей (практика показывает, что там
может быть что угодно, и любые спецэффекты в произвольных местах
как следствие).
--
Maxim Dounin
http://mdounin.ru/
Подробная информация о списке рассылки nginx-ru