[英]How to handle 404 error on server in asp.net
I have use below code: 我使用以下代码:
<customErrors mode="On" defaultRedirect="~/ErrorPage/Default.aspx">
<error statusCode="403" redirect="~/ErrorPage/Default.aspx"/>
<error statusCode="404" redirect="~/ErrorPage/Default.aspx"/>
<error statusCode="400" redirect="~/ErrorPage/Default.aspx"/>
<error statusCode="500" redirect="~/ErrorPage/Default.aspx"/>
</customErrors>
The above code is working fine in localserver but when uploading on the server then 404 exceptions is not redirected to the error page. 上面的代码在localserver上运行正常,但是在服务器上上传时,404异常不会重定向到错误页面。
create this methode in global.asax 在global.asax中创建此方法
public void Application_Error()
{
var routeData = new RouteData();
routeData.Values.Add("controller", "yourControllerNameForError");
routeData.Values.Add("action", "YourActionMethodeForError");
if (exception is HttpException httpException)
{
switch (httpException.GetHttpCode())
{
case 404:
routeData.Values["action"] = "Your404MethodeError";
break;
}
}
Server.ClearError();
Response.TrySkipIisCustomErrors = true;
IController errorController = new ErrorController();
errorController.Execute(new System.Web.Routing.RequestContext (
new HttpContextWrapper(Context), routeData));
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.