如何查看用户提交的Apache HTTP服务器中的请求值

我看到一个间歇性的问题,用户请求没有通过weblogic定向到Apache Web服务器的后端服务器。 我希望在redirect到weblogic之前看到apache的请求值。 如何在apache中查看用户请求值?

如果我正确理解你的问题,你正在寻找从Apache接收到的客户端的整个HTTP请求。 这个问题有很多方法:

  • 您可以使用像tcpdump这样的工具来获取数据包跟踪,然后使用strings来提取数据包的文本内容。 这看起来像这样:

    • 抓包:

       # tcpdump -w packets -s 1500 port 80 and host <client ip address> 
    • 显示结果:

       # strings packets 

    这不是一个完美的方法( strings的输出将包含一些垃圾),但通常是一个好的开始。

  • 根据Google的说法,Apache的最新版本有mod_dumpio ,它允许loggingApache收到的所有input和/或Apache发送的所有输出,以logging(转储)到error.log文件。

  • 我相信mod_security也可以logging完整的请求。

您可以使用:

  • 一个嗅探器: ngrep 'GET|POST' port 80
  • 一个tracer: strace <apache_worker>ltrace <apache_worker>
  • configurationapache日志来logging内容。 尝试仅loggingGET。