이전 기사 "JS에서 ES6 프록시 프록시 사용을 설명하는 기사(코드 공유) "에서는 JS에서 ES6 프록시 프록시를 사용하는 방법에 대해 배웠습니다. 다음 기사는 asp.net의 mvc4 사용자 정의 404 페이지를 이해하는 데 도움이 될 것입니다. 이는 특정 참조 값을 가지고 있으므로 도움이 필요할 수 있습니다.
물론 404를 정의하는 방법에는 여러 가지가 있습니다. 다른 방법은 다른 형태를 나타내며 사용자 경험도 다릅니다. 다음은 두 가지
1 web.config
에서 2dc15ec6bc814c3aa45b55d017848bed
섹션을 찾아 클릭하여 404
를 활성화합니다. >구성 web.config
中找到节2dc15ec6bc814c3aa45b55d017848bed
点中启用404
配置
<customErrors defaultRedirect="~/Error" mode="On" redirectMode="ResponseRedirect"> <error redirect="/Error" statusCode="404" /> </customErrors>
2、定义一个controllersError
(这个随你) ,在action
中如下定义
public ActionResult Index() { Response.Status = "404 Not Found"; Response.StatusCode = 404; return View(); }
这种方式默认为给你的url
加上?aspxerrorpath=/
比如:http://localhost/Error??aspxerrorpath=/123456
故不推荐试用
打开Global.asax
文件定义错误转向地址(controller/action)
protected void Application_Error(object sender, EventArgs e) { Exception ex = Server.GetLastError(); if (ex is HttpException && ((HttpException)ex).GetHttpCode() == 404) { Response.Redirect("/Error"); } }
注意事项: 在开发时候,我们经常会在
Global.asax
中的Application_Error
方法中使用Response.Redirect
方法跳转到自定义错误页,但有时候(特别是当站点部署到 IIS 后)Application_Error
方法中使用Response.Redirect
方法会失效,当发生异常错误后还是显示的默认错误黄页。
其根本原因是尽管我们在
Application_Error
方法中使用了Response.Redirect
方法,但是当系统发生异常错误后Asp.Net
认为异常并没有被处理,所以不会跳转到Application_Error
方法中Response.Redirect
指向的页面,最终还是会跳转到默认错误黄页。
를 정의합니다. url解决这个问题的办法很简单就是在
rrreeeApplication_Error
方法中使用Response.Redirect
做跳转前,先调用Server.ClearError()
方法告诉系统发生的异常错误已经被处理了,这样再调用Response.Redirect
rrreee
2.controllersError
를 정의하고(이것은 귀하에게 달려 있음)action
에서 다음과 같이
?aspxerrorpath=/
추가 예: http://localhost/Error??aspxerrorpath=/123456
따라서 Global.asax
파일을 열고 오류 리디렉션 주소 (controller/action)
🎜rrreee🎜🎜를 정의합니다. 참고: 개발 중에는 를 자주 사용합니다. >Global.asax의 <code>Response.Redirect
메서드는 사용자 정의 오류 페이지로 이동하는 데 사용되지만 때로는(특히 사이트가 IIS에 배포된 경우) 응답 >Application_Error
메소드에 사용된 .Redirect 메소드는 유효하지 않습니다. 비정상적인 오류가 발생하면 기본 오류 노란색 페이지가 계속 표시됩니다. 🎜🎜🎜🎜근본적인 이유는 Application_Error
메서드에서 Response.Redirect
메서드를 사용했음에도 불구하고 Asp.Net 시스템에서 예외 오류가 발생한 경우입니다. code>는 예외가 처리되지 않았다고 믿기 때문에 <code>Application_Error
메서드의 Response.Redirect
가 가리키는 페이지로 점프하지 않고 결국 점프하게 됩니다. 기본 오류 전화번호부로 이동합니다. 🎜🎜🎜🎜이 문제를 해결하는 간단한 방법은 Server.ClearError()Application_Error
메서드에서 Response.Redirect
를 사용하여 점프하는 것입니다. /code> 메서드는 발생한 예외 오류가 처리되었음을 시스템에 알리므로 Response.Redirect
메서드를 다시 호출하면 시스템이 사용자 지정 오류 페이지로 이동합니다. 🎜🎜🎜🎜추천 학습: 🎜asp.net 비디오 튜토리얼🎜🎜위 내용은 asp.net의 mvc4 사용자 정의 404 페이지에 대한 심층 분석(공유)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!