拒绝 favicon.ico 请求中 ACCEPT 标头为空的流量

拒绝 favicon.ico 请求中 ACCEPT 标头为空的流量

作为过滤潜在有害流量的一部分,我目前拒绝 $_SERVER["HTTP_ACCEPT"] 为空的流量。

我从日志中注意到,由于接受标头为空,相当多的请求被拒绝,其中一些请求来自请求 favicon.ico 时的有效 IP 流量。

我目前使用“403 禁止”阻止这些 favicon.ico 请求(我知道我应该使用 406 不接受)。

我的网站上确实有 favicon.ico。我知道用户看不到 favicon.ico“未找到”错误。我屏蔽这些页面是否也一样,还是用户会看到 403 禁止页面?

我想自己测试一下,但我不知道如何生成带有空标头的页面请求。如果有人也有办法做到这一点,也许会有所帮助。

感谢您的输入。

答案1

我阻止这些页面是否是一样的,或者他们会看到 403 禁止页面?

被屏蔽的图片(包括图标)不会导致显示 403 页面。图片不会像未找到一样显示。

答案2

使用 telnet 非常简单。

您可以执行以下操作:打开命令提示符(在 Windows 上执行 cmd)并输入以下三行:

telnet www.yoursite.com 80
GET /favicon.ico HTTP/1.1
host: www.yoursite.com
  • 输入两次即可输出
  • 键入 Ctrl+C 返回命令提示符

您将获得带有标题和 html 的漂亮输出。


对于那些一百万年前就使用过 telnet 的人或者新手来说,这里有一些提示:

  • 在 Windows 7 上,你可能必须先启用 telnet 客户端或服务器,请参阅这里

  • 那么如果你只Connecting To localhost...看到回答是因为 telnet 默认不会回显您输入的内容。

相关内容