我正在阅读programmers.stackexchange.com/questions/46716....。问题答案中有一点是说
If you don’t have a /favicon.ico, this will result in a lot of 404s, draining your server’s bandwidth.
我只是不知道这个图标如何帮助节省服务器的带宽?我知道404是Not Found Error
消息,但/favicon.ico
在这里扮演什么角色?
答案 0 :(得分:3)
我看到了几种可能性。首先,您的favicon.ico
文件可能小于404页面,但这可能没什么区别。
但是,如果你有一个大规模复杂的自定义404页面,它动态地输出到你的数据库以获取一些信息,那么与favicon
之类的静态资源相比,负载会有很大差异。< / p>
第二种情况是,可能会在显示页面的浏览器中或其他不在您网站上的地方缓存真实的favicon
。
这意味着对它的后续请求根本不会触及您的服务器。
浏览器收到的404不太可能以相同的方式缓存,因此下次浏览器更有可能再次尝试,从而导致服务器负载过重。
在你的评论中,你质疑favicon
是什么,所以我将覆盖以防万一:它是浏览器请求的,以便他们可以使用它(例如)在地址栏中提供一个图标,或在书签上,为您的链接。
这样,谷歌(例如)可以有favicon
组成的程式化'G',维基百科有'W',等等。甚至StackOverflow现在还有一个漂亮的小溢出托盘位于我的地址栏左侧。
有关详细信息,请参阅the Wikipedia favicon entry,而不是我要剪切并粘贴到这个小文本输入框中: - )
答案 1 :(得分:1)
我猜这是因为404页面的尺寸比favicon.ico大。至少大部分时间都是......
答案 2 :(得分:0)
如果您在网站上没有或想要/favicon.ico
,那么如何停止使用404次点击填充您的access_log和error_log。添加到您的apache conf或.htaccess
:
## Send 204 "No Content" for /favicon.ico in the web root
Redirect 204 /favicon.ico