如何向未在根目录下提供服务的 Tomcat webapp 提供图标,以避免浏览器在 /favicon.ico 上出现 404

How to provide a favicon to a Tomcat webapp which is not served on root in order to avoid browser's 404s on /favicon.ico

对于 Intranet 项目,我有一个 Tomcat 服务于 http://myserver.local:1234/boilergraphs/index.html

下的网站

我在 Eclipse 中为此 Web 应用程序开发新功能。为了进行调试,我大量使用外部浏览器 Chrome 和 Firefox 的 Web 开发人员工具。两种浏览器都会自动测试 http://myserver.local:1234//favicon.ico - 由于 URL 不存在,因此在开发人员控制台中给我 404 错误。这个控制台输出非常令人分心,因为我观察控制台是否有 other、开发相关的错误。

如何让我的 Tomcat 实例(在 Eclipse 中)在 http://myserver.local:1234/favicon.ico 上提供 favicon.ico,而 Tomcat 系统上唯一的应用程序是 boilergraphs应用程序?

如果唯一的应用程序是您的 boilergraphs 应用程序,则不能。您需要使用 favicon.ico 文件创建第二个 Web 应用程序,以便在 Servers View 中为您的实例打开服务器编辑器,并将另一个 Web 应用程序部署到/ 的路径。 Tomcat 本身在其 webapp/ROOT 文件夹中附带了这样一个应用程序。

消除使您的开发人员控制台混乱的 404 错误的一种完全不同的方法是在页面的 HTML 中 中提供一个图标 。这样做的好处是您不需要 fiddle 只是为了添加文件和路由的图标。

举个例子(*);只需在 <head> ... </head> 标签之间添加到 HTML 页面(例如,index.html):

<link href="data:image/x-icon;base64,AAABAAEAEBAQAAAAAAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAgAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEhEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP7/AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA" rel="icon" type="image/x-icon" />

(*) 图片来源:favicon.cc