作为过滤潜在有害流量的一部分,我目前拒绝 $_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 的人或者新手来说,这里有一些提示: