解决Springboot项目中很多页面出现Whitelabel Error Page(404)的问题
前言
最近接了一个前后端一体的项目,发现其默认路径不是主机+端口(如:http://localhost:3453/)的形式。很多页面的访问是加了一个层级。只要访问就会出现如下提示:
Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. There was an unexpected
error (type=Not Found, status=404). No message available
对我这里而言就是访问不到页面,也就是常见的404错误。
解决
我的解决思路是在找不到网页404时,给出提示,并提供倒计时5秒后自动跳转至登录页/或者首页。
效果如图:
这就需要将404错误(HttpStatus.NOT_FOUND)页面数组注册到错误页面注册器中。首先需要后端的配置类中实现全局错误页面注册类ErrorPageRegistrar:
@Configuration public class ErrorCodePageHandler implements ErrorPageRegistrar { @Override public void registerErrorPages(ErrorPageRegistry registry) { ErrorPage[] errorPages = new ErrorPage[1]; // 404错误页面映射 errorPages[0] = new ErrorPage(HttpStatus.NOT_FOUND, "/404.html"); //这里写入你的页面路径 registry.addErrorPages(errorPages); } }
这样就会在找不到页面的时候打开你的自定义404页面,我个人测试的404页面如下:
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <title>404 找不到</title> <style> html,body{ width: 100%; height: 100%; } h1{ margin-top: 10%; width: 100%; text-align: center; height: 80px; font-size: 60px; } p { width: 100%; height: 40px; text-align: center; font-size: 30px; } div{ width: 100%; align-content: center; text-align: center; } #tipDiv{ color: #761c19; } a { width: 100%; color: #0066cc; text-align: center; } </style> </head> <body> <h1>哦豁!</h1> <p>你查找的网页不存在。</p> <div id="tipDiv"></div> <div> <a id="goBtn">直接跳转</a> </div> <script> var goBtn = document.getElementById('goBtn'); var tipDiv = document.getElementById('tipDiv'); var dreUrl = ""; //这里是你的跳转连接 goBtn.addEventListener('click',function(){ location.href = dreUrl; }); var timer =5; setInterval(function(){ if(timer == 0){ location.href = dreUrl; }else { tipDiv.innerHTML ='您将在'+timer +'秒后自动跳转页面'; timer--; } },1000); </script> </body> </html>
这个404页面的功能很简单,主要就是使用了setInterval进行每秒的倒计时提示,并在计时结束后自动跳转至你指定的页面。同时提供了直接的跳转按钮。样式比较粗糙仅供学习参考。
以上就是解决Springboot项目中页面出现Whitelabel Error Page(404)的问题的详细内容,更多关于Springboot Whitelabel Error Page(404)的资料请关注脚本之家其它相关文章!
相关文章
spring boot 项目利用Jenkins实现自动化部署的教程详解
这篇文章主要介绍了spring boot 项目利用Jenkins实现自动化部署的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2018-07-07如何使用@Slf4j和logback-spring.xml搭建日志框架
这篇文章主要介绍了如何使用@Slf4j和logback-spring.xml搭建日志框架问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-06-06SpringBoot3.2.2整合MyBatis Plus3.5.5的详细过程
这篇文章给大家介绍了SpringBoot3.2.2整合MyBatis Plus3.5.5的详细过程,文中通过代码示例给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下2024-01-01
最新评论