温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SpringBoot项目中怎么设置网站图标

发布时间:2021-07-23 14:04:42 来源:亿速云 阅读:180 作者:Leah 栏目:编程语言

这篇文章将为大家详细讲解有关SpringBoot项目中怎么设置网站图标,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

Spring Boot不同版本对Favicon的支持

在早些版本中Spring Boot对Favicon进行了默认支持,并且通过如下配置进行关闭操作:

spring.mvc.favicon.enabled=false ## 关闭

默认显示效果如下:

但在Spring Boot项目的issues中提出,如果提供默认的Favicon可能会导致网站信息泄露。如果用户不进行自定义的Favicon的设置,而Spring Boot项目会提供默认的上图图标,那么势必会导致泄露网站的开发框架。

因此,在Spring Boot2.2.x中,将默认的favicon.ico移除,同时也不再提供上述application.properties中的属性配置。更多详细信息可查看对应的issues:https://github.com/spring-projects/spring-boot/issues/17925 。

自定义Favicon

既然在当前版本中Spring Boot不支持默认的Favicon,我们就来看看如何自定义网站的Favicon。

正常情况下,直接将命名为favicon.ico的网站图标放在resources或static目录即可显示,但如果使用的版本无法显示。

首先排除浏览器缓存的问题。在撰写本文时多次遇到浏览器缓存导致无法展示的情况。一般操作步骤,清除浏览器缓存,重启浏览器,即可展示。

同时,如果需要在页面中通过代码进行引入。下面展示使用Thymeleaf时的引入方式:

<!DOCTYPE html><html lang="en" xmlns:th="http://www.thymeleaf.org"><head> <meta charset="UTF-8"/> <title>Hello Favicon</title> <link rel="icon" th:href="@{/favicon.ico}" rel="external nofollow" rel="external nofollow" type="image/x-icon"/> <link rel="bookmark" th:href="@{/favicon.ico}" rel="external nofollow" rel="external nofollow" type="image/x-icon"/></head><body><h2>Hello Favicon!</h2></body></html>

如果使用其他前端框架,可使用如下方式:

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"/> <title>Hello Favicon</title> <link rel="icon" href="/favicon.ico" rel="external nofollow" rel="external nofollow" type="image/x-icon"/> <link rel="bookmark" href="/favicon.ico" rel="external nofollow" rel="external nofollow" type="image/x-icon"/></head><body><h2>Hello Favicon!</h2></body></html>

上述方式有一个弊端,那就是需要在每个展示的页面中都添加对应的代码。

注意事项

在使用的过程中,遇到最多的问题其实就是缓存导致的问题,比如Thymeleaf缓存未关闭、浏览器缓存等。

所以,如果在浏览器中打开网页并没有展示出效果,并不代表程序没起效。这时,可采用直接访问favicoin的形式来验证。

http://localhost:8080/favicon.ico

在浏览器访问上述链接,如果能够展示图标,则说明已经可以正常访问了。

另外,在web项目中,如果自定义了Web相关组件或拦截器也有可能导致无法显示或404,可对其进行有针对性的排查。

关于SpringBoot项目中怎么设置网站图标就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI