X-Pad:避免apache添加浏览器错误头
我看到这个头附加到来自Apache的响应。 它对新时代浏览器有什么意义吗? 或者它仅仅是为了规避Netscape早期版本中的一个bug。 看起来很奇怪。
编辑
当我在Jmeter响应文本中看到有这个奇怪的标题返回时,我正在对应用程序进行性能testing。 它说:
X-pad: avoid browser bug
而已! 所以我尝试了一些Googlesearch,这似乎是为网景浏览器的bug添加的头文件。 无论如何,我仍然好奇,因为我们距离那些浏览器的版本太远了(幸好),有一个坚实的理由,它仍然存在。 我们使用apache2。
希望这些细节有帮助。
干杯
不,现在是一个残缺的标题。 也就是说,它被用来解决浏览器中已经过时的错误(IE6比IE6老几代 – 这个错误在15年前被报道为1997年的固定错误!),而且没有人再使用它了。
从2008年开始, 这个补丁就是在Apache的SVN中,但是它显然还没有传播到所有的发行版本(有些网站可能会使用非更新版本的Apache)。
以下是从源头获得的标题的评论:
/* Navigator versions 2.x, 3.x and 4.0 betas up to and including 4.0b2 * have a header parsing bug. If the terminating \r\n occur starting * at offset 256, 257 or 258 of output then it will not properly parse * the headers. Curiously it doesn't exhibit this problem at 512, 513. * We are guessing that this is because their initial read of a new request * uses a 256 byte buffer, and subsequent reads use a larger buffer. * So the problem might exist at different offsets as well. * * This should also work on keepalive connections assuming they use the * same small buffer for the first read of each new request. * * At any rate, we check the bytes written so far and, if we are about to * tickle the bug, we instead insert a bogus padding header. Since the bug * manifests as a broken image in Navigator, users blame the server. :( * It is more expensive to check the User-Agent than it is to just add the * bytes, so we haven't used the BrowserMatch feature here. */
我知道答案已被接受,但我仍然认为这将是运行php的用户有用。
如果你是一个PHP用户,你得到这个头。 您可以使用自定义“X-Powered-By”标题将其closures。
例如:
header('X-Powered-By: Powerful Management');
你也可以这样删除它
header_remove('X-Pad');
,有时将该标题设置为空也会将其删除:
header('X-Pad:')
并且你的X-Pad标题将会消失