通过前台访问localhost:8080 的时候,前端无论什么情况下只显示index.html里面的内容(内容:<h1>首页<h1>)
而且有错误的话,前台和前端也不会报错
将静态资源放入static的时候,会访问不到index.html ,前台报错404
请教各位大佬,这是什么问题
2.控制器
1根据你的项目结构错误页面不应该是跳转到 return "error/error"的error.html吗
2,要是不改程序,就把error.html移动到和index.html的同级路径
这里默认了你的返回路径...如果不在templates里 肯定是报404的..
你有二级包error, 控制器return的时候确定不加上?
不可以,加上error二级包没用,错误的那个代码根本没用,还是直接跳转到index
移动到同路径下,也是不行,好像只认index
按理说,springboot,不是会识别吗,出现错的,会自动找error,404等页面
就算return “error.html” ,也是到index页面
application配置了吗,方便发个项目压缩包吗,测试一下 2450957609@qq.com
ok
就是yml配置文件没写好..
#thymeleaf web html spring.thymeleaf.mode=HTML5 spring.thymeleaf.cache=false spring.thymeleaf.servlet.content-type=text/html spring.thymeleaf.encoding=UTF-8 spring.thymeleaf.suffix=.html
上面的配置配置到properties或yml里...然后html里<html lang="en" xmlns:th="http://www.thymeleaf.org">
springboot的默认配置如:
1, 在templates文件夹下,直接创建error页面,这样所有异常将直接转到这个页面
2, 在templates文件夹下,直接创建error文件夹。在error文件夹里,创建404.html,500.html 这种以http错误值为名称的页面。此时,当产生某种错误时,将直接跳到相应页面。
同时使用时,以2为准
要是想修改的话可以进行默认配置
把上述的配置都加入到yml文件了,还是不可以,无论有误异常,都调到首页index.html页面,除非把index删除或移除,就会跳转 到自定义的404.html页面
和版本兼容有关系吗,这个都是创建springboot项目勾选的啊
打个断点 看进你这个请求没有
调试按钮都是灰色的,好像没有进入这个控制器
各位大佬,上述问题都不是的,还是照找不到
电脑问题...把电脑砸了...
你是要用error文件夹里404.html,500.html 还是直接只使用error.html呀
你这样写法,访问 localhost:8080,是直接默认跳转到 templates/index.html,无论如何是不会走你Controller里的 index()方法。所以
你说的 “除非把index删除或移除,就会跳转 到自定义的404.html页面”
因为 访问 localhost:8080 找不到默认的首页 index.html ,所以才调到 404.html 的
看一下springboot的底层源码可知:
这个跳转错误页面,springboot有默认跳转机制的,他是根据状态吗进行跳转错误页面的,如404,500等
而error.html是所有错误统一跳转页面,但是有单一准确错误页面,他就会精准跳转到那个页面
例如:404.html,而不再跳转到error.html了
我把你发给我的代码给改了一下,你是要这种情况吗?
当访问http://localhost:8080 可以跳转到index.html
当访问http://localhost:8080/ssss 可以跳转到404.html
当访问http://localhost:8080/test可以跳转到error.html
当访问http://localhost:8080/test并且打开注释//int i = 9 / 0;时可以跳转到500.html
你试一下:
https://ww.lanzous.com/id3faja
主要是把你的blogapplication类移动到你controller类包路径的上一级,这样才能使其扫描到@controller注解,才能springboot进行管理使用 生效
估计已经弄好了
我把项目和版本重新更换了一边最新的