我有一个Grails应用程序使用它自己的tomcat在本地运行,我刚刚将favicon改成了一个新的。问题是我在任何浏览器中都看不到它。旧的收藏夹出现了,或者我根本没有收藏夹,但没有我的新收藏夹。我不认为这本身是圣杯的问题,更多的是收藏夹的问题。

favicon会发生什么?他们应该如何工作?我的浏览器中有许多书签,它们的图标错误,而且似乎永远不会被刷新。如何强制服务器/浏览器停止缓存它们?考虑到它们通常只有16x16,总是缓存它们似乎很愚蠢。为什么不在每次访问页面时都上传它们呢?这并不是一个巨大的开销。


当前回答

很可能是网络浏览器问题。你必须从浏览器中删除缓存,关闭浏览器并重新打开。这应该会解决问题。

我不相信你的收藏夹会被刷新,直到你重新访问该页面,并假设你之前已经清除了浏览器缓存。

您的网络浏览器不会自行上网查看新的收藏夹图标。。。谢天谢地。

其他回答

如果尽管应用了上述步骤,问题仍然存在:

尝试重新启动IIS服务器。

请按照以下步骤更改应用程序图标:

在项目中添加.ico文件。转到angular.json,在“项目”->“架构师”->“构建”->“选项”->“资产”中,在这里输入图标文件。请参阅favicon.ico的现有条目,了解如何执行此操作。转到index.html并更新图标文件的路径。例如

<link rel=“icon”type=“image/x-icon”href=“abc.ico”>

或者,用favicon.ico重命名图标文件并将其替换到目录中。

重新启动服务器。硬刷新浏览器,您就可以开始了。

当你从谷歌请求favicon时,你可以查看响应标题。

Last-Modified: Fri, 09 Jan 2009 16:35:02 GMT
Date: Thu, 01 Dec 2010 00:00:01 GMT
Expires: Fri, 01 Dec 2011 00:00:01 GMT
Cache-Control: public, max-age=31536000
Age: 7

如果在响应上放置“Expires:”标头,客户端浏览器将在该时间戳之后重新请求图标。在进行主动开发时,您可以在将来将过期时间戳设置为一两秒,并始终让它获取该时间戳,尽管这是一个糟糕的长期计划。

很可能是网络浏览器问题。你必须从浏览器中删除缓存,关闭浏览器并重新打开。这应该会解决问题。

我不相信你的收藏夹会被刷新,直到你重新访问该页面,并假设你之前已经清除了浏览器缓存。

您的网络浏览器不会自行上网查看新的收藏夹图标。。。谢天谢地。

这个答案还没有给出,所以我想我会把它贴出来。我在网上到处找,没有找到一个测试本地开发中的收藏夹的好答案。

在当前版本的chrome(OSX上)中,如果您执行以下操作,您将获得即时收藏夹刷新:

将鼠标悬停在选项卡上右键单击选择重新加载现在应该刷新您的收藏夹图标

这是我找到的在本地刷新收藏夹图标的最简单方法。