禁用访问日志中的查询字符串

时间:2013-01-03 17:34:37

标签: apache logging

长话短说,用户密码通过url传递纯文本(可怕,是的,但不是我的想法),这个查询字符串存储在访问日志中,我们显然不希望这么明显。 / p>

有没有办法阻止查询字符串存储在访问日志中而不禁用CustomLog?

2 个答案:

答案 0 :(得分:7)

您的common日志格式包含%r中的查询字符串(第一行请求)

您可以做的是添加新的日志格式(保留旧日志格式以供参考,无需删除)

LogFormat "%h %l %u %t \"%m %U %H\" %>s %b" common_no_querystring

其中%m是方法(GET / POST),%U是不使用查询字符串请求的URL,%H是请求的HTTP版本。这将输出与%r相同的行,但查询字符串除外。

然后您需要做的就是将自定义日志行更改为;

CustomLog "logs/access.log" common_no_querystring

并且您将不再在日志中获取查询字符串。

答案 1 :(得分:3)

请查看Custom Log Formats,特别是

%U  The URL path requested, not including any query string.