是否有一个 Apache 模块可以以未处理的方式完整记录 HTTP 请求?

是否有一个 Apache 模块可以以未处理的方式完整记录 HTTP 请求?

我正在寻找一个能够记录未处理的 HTTP 请求的 RAW 内容的 Apache 模块。以下是一个例子:

POST https://foobar/ HTTP/1.1
Host: foorbar
Connection: keep-alive
Content-Length: 357
...
Accept-Language: en,en-US;q=0.9,de-DE;q=0.8,de;q=0.7
Cookie: sessiontid=....

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> ...  </s:Envelope>

到目前为止我已经尝试过:

  • apache内置日志:只能记录一些特定的HTTP标头(自定义格式指定的标头)。
  • mod_log_forensic+ mod_unique_id:它会转储所有 HTTP 标头,但不会转储正文/POST 数据。在上面的示例中,会记录所有 HTTP 标头,但不会记录 SOAP 信封。一个很棒的功能是能够使用唯一 ID 将这些日志与常规 apache 日志链接起来。
  • mod_dumpio:它只会将 POST 数据转储到 error.log,这种方式不太友好(每个请求多行,全部用附加信息修饰)。此外,没有办法将该信息与唯一 ID 绑定。
  • mod_dumpost:比 dumpio 更好,因为它将所有内容记录在一行中,而无需用额外数据进行修饰。不过,它不支持唯一 ID。因此很难将该信息与 HTTP 标头(记录在不同位置)进行匹配。

相关内容