我正在编写一个位于服务器根目录下的简单网页,快捷方式图标位于“/favicon.ico”,但我的浏览器从不请求此 favicon.ico。我在 html 中包含了以下内容:
<link href="favicon.ico" rel="shortcut icon" type="image/x-icon" />
Run Code Online (Sandbox Code Playgroud)
当我打开开发者工具的网络选项卡时,我看到对 192.168.0.1(网页本身)的请求,但没有后续对图标的请求。清除缓存并启用“禁用缓存”不会改变行为。
开发人员控制台中没有出现错误,其他一切似乎都运行良好。
编辑:
我根据让-弗朗索瓦的帖子更新了以下链接,但仍然遇到同样的问题:
<link href="favicon.ico" rel="icon" type="image/x-icon"/>
Run Code Online (Sandbox Code Playgroud)
原来我处理的问题是图标的缓存以及我检测浏览器是否实际请求图标的方式。
我只是在查看 chrome 上的网络日志,以确定是否有 favicon.ico 请求发出,而Favicon 请求未显示在开发人员工具栏的网络选项卡中表明这存在问题。
只是进行硬刷新(通过强制浏览器不使用缓存)似乎也没有解决问题,我能够让所有三个浏览器发出请求的唯一方法是向链接的结尾。最后的链接标签是:
<link href="favicon.ico?v=1.0" rel="icon" type="image/x-icon"/>
Run Code Online (Sandbox Code Playgroud)