可以在 Apache 2.2 中記錄 POST / GET 參數

可以在 Apache 2.2 中記錄 POST / GET 參數

是否可以以某種方式調整 Apache 配置來記錄 POST / GET 參數?

例如,這是它當前記錄的內容:

174.131.xx.xxx - - [30/Apr/2013:08:41:59 -0500] "POST /admin/bl_orderItem.php HTTP/1.1" 200 44

我想實現這樣的效果,以便在日誌中看到:

174.131.xx.xxx - - [30/Apr/2013:08:41:59 -0500] "POST /admin/bl_orderItem.php?name=John&lastName=Rambo&zip=12331 HTTP/1.1" 200 44

感謝您的所有建議。

答案1

在自訂日誌格式中,%r(請求的第一行)將包含 GET 參數。對於 GET 參數,請使用 %q (查詢字串(如果查詢字串存在,則在前面新增 ?,否則為空字串))。

http://httpd.apache.org/docs/2.4/mod/mod_log_config.html#formats

對於發布數據,您必須使用 mod_dumpio。

http://httpd.apache.org/docs/2.4/mod/mod_dumpio.html

答案2

您可能還需要查看 mod_security 模組來執行此操作。它非常適合記錄所有參數(輸入和輸出)。

答案3

你可以使用php:

https://stackoverflow.com/questions/3718307/php-script-to-log-the-raw-data-of-post

<?php
file_put_contents("post.log",print_r($_POST,true));
?>

相關內容