Как отмечает @Maor H., журнал доступа обычно является наиболее удобным местом для получения «входящих» запросов. Эти журналы могут быть настроены так, что они могут идти куда угодно, но обычно их можно найти где-то под /var/log/apache2/
или /var/log/httpd/
.
Их расположение определяется директивами CustomLog
в httpd.conf
или включенным файлом (например, виртуальным хостом). Таким образом, поиск этого в ваших httpd.conf
и подобных *.conf
файлах, как правило, является хорошим началом, если журналы не могут быть найдены в одной из /var/log/*
директорий, упомянутых выше.
Однако, важное различие заключается в том, что журналы apache / httpd не записываются до тех пор, пока запрос не будет выполнен. Это легко заметить, так как записи журнала обычно включают в себя такие вещи, как код состояния окончательного запроса (%>s
в директиве LogFormat
) и сколько времени занял запрос (%T
в LogFormat
директива).
Если вы заинтересованы в том, чтобы видеть запросы «по мере их поступления», краткий ответ заключается в том, что не существует «хорошего» способа, который я знаю. Тем не менее, обычно достаточно хороший метод использует Apache mod_status
, который обычно настроен (когда он настроен) для доступа через http://127.0.0.1/server-status/
с той же машины, что и сам сервер. С настроенным mod_status
вы обычно можете видеть вывод «табло», как он называется, из командной строки, используя команду, аналогичную apachectl fullstatus
или (в зависимости от вашего дистрибутива) service httpd fullstatus
.
server-status
/ fullstatus
/ «табло» покажет сводку активных (и неактивных) соединений, усеченную копию самого запроса и то, что в настоящее время происходит с этим запросом (например: он обрабатывается? Отправляется ли ответ? Он простаивает? Просто ожидает новое соединение?)
Основными недостатками табло являются то, что они плохо поддаются отслеживанию или активному контролю иным образом. Это полезно для определения того, что может вызывать чрезмерную нагрузку на сервер, хотя даже для этого у него есть недостаток: быть доступным только тогда, когда apache способен обслуживать дополнительное соединение (поэтому не стоит выяснять, что блокирует дополнительные соединения) .
Основным преимуществом табло, как упоминалось выше: оно дает вам детали запроса до запроса было завершено. Имея это в виду, он может лучше соответствовать вашему запросу на список «входящих» запросов.
Если вы хотите получить информацию о вещах более низкого уровня и не говорите о рабочем сервере, то, конечно, WireShark может предоставить вам живой список HTTP-запросов по мере их поступления. сами TCP-соединения и слишком ресурсоемки для производственного использования. Если вы пытаетесь выяснить, что на самом деле происходит по телеграмме, то это лучший выбор.