Назад | Перейти на главную страницу

Apache 2.4 ErrorLogFormat - Как показать IP-адрес клиента? -% a пусто

Похоже, что обновление Apache 2.2 до 2.4 изменило формат файла журнала ошибок. Журналы ошибок, используемые для отображения IP-адреса удаленного клиента.

Журнал ошибок Apache 2.2: [Thu Aug 29 08:28:46 2019] [error] [client 50.57.61.20] message

Журнал ошибок Apache 2.4: [Thu Aug 29 08:02:23.779174 2019] [:error] [pid 10036] message

К счастью, Apache 2.4 добавил ErrorLogFormat директива. Я уточнил:

 ErrorLogFormat "[%{u}t] [%-m:%l] [%a] %M"

Но %a строка формата, которая должна показать "IP-адрес клиента и порт запроса" давая мне пустой.

Теперь журнал ошибок: [Thu Aug 29 11:13:13.281770 2019] [-:error] message

Чего я ожидал: [Thu Aug 29 11:13:13.281770 2019] [-:error] [204.115.145.100] message

Строка формата. IP-адреса клиентов правильно отображаются в журнале доступа, который имеет %h Строка формата для «Имя удаленного хоста». Для ErrorLogFormat такой строки формата нет.

У нас работает выделенная Rackspace CentOS 7.6.1810, Apache 2.4.6.

%a начал работать, когда мы обновлен mod_wsgi с 3.4.18 до 4.6.2. Спасибо Федору В. из WSM International.