问题排查
修复不显示或不更新的 favicon
同样是空白或过时的标签页,但每种技术栈的原因各不相同。在下面找到你的情况,或扫描你的站点看看它实际提供了什么。
yoursite.com
yoursite.com
Fixed
文件或路径错误link 指向了空
构建配置从未复制到输出目录
浏览器缓存旧图标卡住了
Next.js
React
Vite
Vite 会在构建时把 public/ 复制到输出根目录,并重写 index.html。一个在开发时正常、在生产环境 404 的 favicon,几乎总是路径里带了 public/ 这一段,或者是从 src 导入而被加了哈希。
阅读解决方法Vue
Vue 单文件组件无法把 link 标签渲染进 head,所以 favicon 是在 index.html 里声明的:Vite 下是项目根目录,Vue CLI 下是在 public/ 内部。标签页空白,说明那个文件的标签写错了。
阅读解决方法Angular
Angular 只有在构建配置告诉它时才会复制静态文件。一个没被 angular.json 里 assets 条目匹配到的图标永远进不了 dist。构建会成功,而文件不在那儿。
阅读解决方法Astro
Astro 会把 public/ 原封不动地复制到输出,但从不替你注入图标标签。标签页空白意味着 link 不在你页面所用的 layout 里,或者某个页面渲染了自己的 html 元素、跳过了 layout。
阅读解决方法