
何らかの方法で 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#フォーマット
投稿データには 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));
?>