Apache 日志行包含“...”

Apache 日志行包含“...”

我们对要分析的 Apache 日志有一个自定义日志行格式。

CustomLog "|/usr/sbin/rotatelogs -l /mnt/var/log/apache2/access-%Y%m%d%H%M%S.log 900" "%a %{%s}t \"%r\""

然而,有些日志行不知为何被神秘地缩短为“...”,但这是怎么回事呢?发现的最短行是 317 个字符,而最长的行则超过 2000 个字符。

“获取/曝光?sg=&ap=0x0&fv=WIN%2010,0,22,87&si=IH95VDUAVLJ0&pt=Lage%20hjemmelaget%20sengegavl%20-%20Forum%20-%20Diskusjon.no&iv=0&sd=1024x600&ct=680&tz=-120&eu=http%3A//www.diskusjon.no/index.php%3Fshowtopic%3D1011139&l...AS3&an=NO %20-%20180x500%20Pretail%20CPC&wd=1024x483&rf=http%3A//www.google.no/search%3Fhl%3Dno%26source%3Dhp%26q%3Dsengegavl+lage%26meta%3D%26aq%3D2%26aqi%3Dg10%26aql%3D%26oq%3Dsengega%26gs_rfai%3D&ui=3INYF5QAZL10&ws=0x417&ad=180x500&sa=HTTP/1.1”

答案1

任何这些 问题

GET URI 的长度一般不应超过 255 个字符,如果您需要发送更多信息,请使用 POST。使用较长的 URI 会导致各种混乱,包括日志中的省略号、代理问题,以及极端情况下的 414 错误。

答案2

你怎么知道阿帕奇是否正在截断 URL? 您是否在用户会话期间看到这些内容?更简单的答案可能是某人通过电子邮件将过长的 URL 发送给其他人,而该 URL 被显示为省略号,用户剪切并粘贴了带有省略号的 URL...

但是是的,我同意 Chris 的观点:真正的问题是您的 URL 太长,某些东西(可能不是 Apache)正在截断它们。正确的解决方案是管理您的软件以支持较短的 URL,这样就不会引发奇怪的截断问题。

相关内容