Почему записи в 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