我清除了服务器错误并重定向到我的ErrorController(代码在 Global.asax.cs Application_Error):
Response.Clear();
HttpContext.Current.Response.TrySkipIisCustomErrors = true;
Server.ClearError();
var routeData = new RouteData();
routeData.Values.Add("controller", "Error");
routeData.Values.Add("action", "HttpError404");
IController errorController = new ErrorController();
errorController.Execute(new RequestContext(
new HttpContextWrapper(Context), routeData));
并且操作返回一个视图:
public ActionResult HttpError404(Exception error)
{
Response.StatusCode = 404;
if (Request.IsAjaxRequest())
{
return Content("404 not found");
}
return View();
}
问题是当chrome和ff(不在边缘)的web.config中有compilation debug="true"
时,404页面显示为source(plain html)
答案 0 :(得分:2)
y
与浏览器特有的内容无关。
然而,从您的实现看,浏览器链接似乎导致了这个问题。
您可以停用compilation
并检查是否有效,
https://docs.microsoft.com/en-us/aspnet/visual-studio/overview/2013/using-browser-link#disabling