`

自定义web错误页与找不到页(400与500)

    博客分类:
  • j2ee
 
阅读更多

在web.xml中定义如下XML:

        <error-page>
		<exception-type>java.lang.Throwable</exception-type>
		<location>/WEB-INF/views/error/500.jsp</location>
	</error-page>
	<error-page>
		<error-code>500</error-code>
		<location>/WEB-INF/views/error/500.jsp</location>
	</error-page>
	<error-page>
		<error-code>404</error-code>
		<location>/WEB-INF/views/error/404.jsp</location>
	</error-page>

 在 web项目的/WEB-INF/views/error文件夹下定义404.jsp与500.jsp

404.jsp示例:

<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<%response.setStatus(200);%>

<!DOCTYPE html>
<html>
<head>
	<title>404 - 页面不存在</title>
</head>

<body>
	<h2>404 - 页面不存在.</h2>
	<p><a href="<c:url value="/"/>">返回首页</a></p>
</body>
</html>

 500.jsp示例:

<%@ page contentType="text/html;charset=UTF-8" isErrorPage="true" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page import="org.slf4j.Logger,org.slf4j.LoggerFactory" %>
<%response.setStatus(200);%>

<%
	Throwable ex = null;
	if (exception != null)
		ex = exception;
	if (request.getAttribute("javax.servlet.error.exception") != null)
		ex = (Throwable) request.getAttribute("javax.servlet.error.exception");

	//记录日志
	Logger logger = LoggerFactory.getLogger("500.jsp");
	logger.error(ex.getMessage(), ex);
%>

<!DOCTYPE html>
<html>
<head>
	<title>500 - 系统内部错误</title>
</head>

<body>
	<h2>500 - 系统发生内部错误.</h2>
	<p><a href="<c:url value="/"/>">返回首页</a></p>
</body>
</html>

 

然后服务器的所有报错都会跳转到500.jsp,所有页面找不到的请求都会转发到404.jsp.

其中500.jsp与404.jsp可根据自己项目灵活定制.

注意不要少了 <%response.setStatus(200);%> 这句话,以设置服务器返回的HTTP状态!

分享到:
评论

相关推荐

    显示自定义错误页面,用户自定义

    在IT行业中,尤其是在Web开发领域,自定义错误页面是一个重要的用户体验设计环节。它允许开发者根据自己的需求和品牌风格,为用户呈现更为友好、更具指导性的错误信息,而不是默认的浏览器或服务器错误页面。本篇...

    IIS配置:自定义错误页面自动跳转

    在自定义错误页面配置中,需要设置 `customErrors` 节点,通过 `mode` 属性设置错误模式为 `On`,并设置 `defaultRedirect` 属性将错误跳转到自定义的错误页面。例如: `...

    IIS自定义错误文件

    4. 配置IIS设置:打开IIS管理控制台,找到目标网站或应用程序,双击“错误页”功能。在这里,你可以为每个错误状态码设置自定义响应,选择“执行URL”并指定`inetpub\custerr`下的相应自定义错误文件。 5. 测试:...

    python flask 自定义错误页面404.html源代码

    &lt;h1&gt;404 - 找不到页面 很抱歉,您请求的页面不存在。 ``` 然后,在`app.py`中,你需要注册这个模板为404错误页面: ```python from flask import Flask, render_template app = Flask(__name__) @app....

    好看的404,500等错误页面

    每个错误代码通常对应一个HTML文件,如`404.html`(找不到页面)和`500.html`(服务器内部错误)。这些页面应该设计得既信息明确,又具有吸引力,可以包含以下元素: 1. **品牌一致性**:自定义错误页面应与网站的...

    web工程中404/500错误页面配置+404页面模板

    在Web开发中,404和500错误页面是用户在访问网站时可能会遇到的两种常见问题。这些错误页面的正确配置对于提供良好的用户体验和维护网站的稳定性至关重要。下面我们将详细探讨这两种错误页面的含义、配置方法以及404...

    Android构建一个通用的WebView(二):自定义的错误页面、缓存数据,离线浏览

    在使用WebView加载网页时,可能会遇到网络错误、404找不到页面等问题。默认情况下,WebView会显示系统提供的错误页面,但这往往不符合我们应用程序的UI风格。为了提供更好的用户体验,我们可以自定义错误页面。首先...

    asp.net 异常处理跳转自定义错误页面Demo

    本示例是关于如何在ASP.NET中实现异常处理,特别是如何在出现错误时跳转到自定义的404(页面未找到)和500(服务器内部错误)错误页面。下面我们将详细探讨这一主题。 首先,我们需要理解ASP.NET中的异常处理机制。...

    【ASP.NET编程知识】ASP.NET MVC自定义错误页面真的简单吗.docx

    例如,在 ASP.NET MVC 中,自定义 404 错误页面需要在 web.config 文件中添加 `&lt;customErrors&gt;` 配置节,并在错误页面中返回 404 状态码。否则,ASP.NET MVC 将返回 200 状态码,而不是 404 状态码。 此外,自定义...

    servlet/jsp自定义错误页面

    这是自定义的错误页 int status_code = -1; String exception_info = null; Exception theException = null; status_code = ((Integer) request.getAttribute("javax.servlet.error.status_code")); ...

    Web开发-如何使用自定义404错误页面提升用户体验-Python实例源码.zip

    在Web开发中,一个良好的用户体验至关重要,而当用户尝试访问不存在的页面时,服务器返回的默认404错误页面往往显得冰冷且不友好。自定义404错误页面可以大大提升这种体验,让用户的错误导航变得更为优雅和指导性。...

    404,500错误页面设计

    在网页设计中,404和500错误页面是两个非常重要的元素,它们直接影响到用户的体验和对网站的专业印象。这些错误页面是用户在访问过程中遇到问题时看到的反馈,因此,设计出美观且人性化的404和500错误页面至关重要。...

    自定义Web的上传控件

    本文将深入探讨如何自定义Web的上传控件,包括它的实现原理、设计考虑以及常见技术方案。 首先,理解上传控件的基本工作原理是至关重要的。当用户选择文件后,浏览器会读取文件内容并将其暂存,然后通过HTTP或HTTPS...

    ThinkPHP中自定义错误页面和提示页面实例

    在ThinkPHP框架中,自定义错误页面和提示页面是...这些知识点对于构建友好、易用、功能完善的Web应用来说是必不可少的。希望通过本实例的解读,能够帮助更多ThinkPHP开发者快速掌握这一技巧,提升开发效率和产品质量。

    【ASP.NET编程知识】ASP.NET MVC下自定义错误页和展示错误页的方式.docx

    通过IIS管理工具,可以在“错误页”配置中为不同HTTP状态码(如404 - Not Found,500 - Internal Server Error等)指定自定义错误页面。这些页面可以是静态HTML文件或者动态ASPX页面,一旦服务器遇到对应的状态码...

    IIS自定义404错误页避免暴露.NET网站路径信息

    因为404错误是针对找不到页面的,所以应该选择“404:Not Found”选项。然后将错误页面设置为之前创建的“error.htm”文件。 4. 编辑功能设置:在“自定义错误”标签页内,右键选择“编辑功能设置”,可以对一些详细...

    ThinkPHP5 自定义配置页面(静态文件)

    - 当一个URL请求找不到对应的路由或控制器时,服务器会返回404错误。 - 我们可以创建一个名为`404.html`的静态文件,放置在`public`目录下,以作为自定义的404错误页面。 - 如果想要更动态的404页面,可以在`...

    ASP.NET MVC下自定义错误页和展示错误页的方式

    在IIS中配置错误页入口,可以在服务器上找不到所需资源时抛出错误页,并设置需要展示的自定义错误页面。例如,可以设置404错误码对应一个自定义的404页面,从而在用户访问不存在的URL时提供更友好的提示。 当一个...

    nginx自定义404错误页面设置方法.docx

    Nginx 是一款流行的 Web 服务器软件,可以根据需要自定义错误页面,以提高用户体验。本文将详细介绍 Nginx 自定义404错误页面设置方法。 一、基本概念 在开始之前,需要了解什么是404错误页面。404错误页面是指当...

Global site tag (gtag.js) - Google Analytics