【发布时间】:2019-07-19 08:01:27
【问题描述】:
我使用的是 spring-boot 2.1.3,我想添加一个错误页面作为后备。我尝试在模板文件夹下添加一个error.html,但没有成功。
还尝试添加 ErrorController 并为每种错误类型分类页面,但它也不起作用。
我还需要做其他配置吗?
提前致谢。
【问题讨论】:
标签: java spring spring-boot spring-mvc spring-security
我使用的是 spring-boot 2.1.3,我想添加一个错误页面作为后备。我尝试在模板文件夹下添加一个error.html,但没有成功。
还尝试添加 ErrorController 并为每种错误类型分类页面,但它也不起作用。
我还需要做其他配置吗?
提前致谢。
【问题讨论】:
标签: java spring spring-boot spring-mvc spring-security
直接在资源/模板中添加 error.html 对我也不起作用。 所以我创建了一个自定义的错误控制器并将error.html添加到资源/静态文件夹中。
@Controller
public class CustomizedErrorController implements ErrorController {
@RequestMapping("/error")
public String handleError() {
return "error.html";
}
@Override
public String getErrorPath() {
return "/error";
}
}
【讨论】:
除了关闭 Whitelabel 错误页面之外,您还可以通过将此属性添加到属性文件来实现:
server.error.whitelabel.enabled=false
确保您在以下文件夹中有静态错误页面(即 404.html):
src/
+- main/
+- java/
| + <source code>
+- resources/
+- public/
+- error/
+- 404.html
【讨论】:
我唯一能想到的(没有提供任何代码示例)是 /error 可能没有查看权限。请尝试在SecurityConfigurations中设置权限,允许/error被所有人访问。
http.authorizeRequests().antMatchers("/error").permitAll();
【讨论】: