Можно ли с помощью apache сбрасывать целые HTTP-запросы? Мне нужно отслеживать все HTTP-заголовки входящих запросов. Как это сделать?
Я думаю, что вам нужно вместо Apache анализатор пакетов, Также известен как сниффер пакетов. Двое из самых популярных, вероятно, TCPDump и Wireshark, оба из которых бесплатны и имеют версии для операционных систем Windows и * nix. Они покажут вам весь трафик, поступающий через интерфейс, а не только то, что видит Apache. Но вы можете использовать фильтры для ограничения указанного порта, например 80 для http.
tcpdump:
Следующая команда, запущенная с сервера, покажет вам все пакеты, предназначенные для порта 80:
sudo tcpdump -s 0 -X 'tcp dst port 80'
Переключатель с заглавной буквы X выгружает полезную нагрузку в шестнадцатеричном формате и ASCII. Переключатель s с 0 означает получение всего пакета. «tcp dst port 80» означает фильтровать и показывать только пакеты, предназначенные для порта 80, в заголовке tcp.
Wireshark:
Для более удобной для пользователя версии, если у вас работает графический интерфейс, подумайте о wirehark (формально известном как ethereal).
возможно сброс печенье ? иначе - посмотрите на mod_dumpio.
Базовый сниффинг пакетов становится проще с ngrep, гибридом tcpdump и grep. В определенных сценариях, если вы хотите увидеть, как веб-браузеры взаимодействуют с веб-серверами, и проверить заголовки HTTP.
В этом примере запустите ngrep на веб-сервере следующим образом:
$ ngrep port 80
вы также можете отфильтровать HTTP-запрос на запрос «GET /» на порт 80:
$ ngrep -q '^GET .* HTTP/1.[01]'
На стороне клиента есть полезный инструмент под названием Tamper Data. Это расширение Firefox, которое дает вам возможность просматривать, записывать и даже изменять исходящие HTTP-запросы.
Вы можете найти дополнительную информацию Вот
Вместо использования tcpdump или wirehark используйте tcpflow. Это небольшая замена tcpdump, но он создает файл для каждой стороны каждого соединения, поэтому вам не нужно пытаться декодировать поток самостоятельно.
В Apache встроена такая функциональность; просто увеличьте уровень журнала к trace7
или trace8
:
LogLevel trace8
Обратите внимание, что это сбросит много данных. Вы были предупреждены.