Justin808
Justin808

Reputation: 21512

asp.net not displaying a custom 404 page as configured

in my web config I have:

<customErrors mode="On">
  <error statusCode="404" redirect="~/error/404.aspx" />
</customErrors>

http://localhost/meh <-- standard 404 is shown

http://localhost/meh.aspx <-- custom 404 is shown

http://localhost/error/404.aspx <-- the custom error page I want shown for all 404 errors

How do I have to setup my web.config to send all 404 to my custom error?

Thanks

Upvotes: 6

Views: 2805

Answers (2)

Mike Cole
Mike Cole

Reputation: 14703

You have to configure this in IIS. By default, only specific files will get routed through the ASP.NET framework... otherwise IIS will handle it. enter image description here

Upvotes: 3

TheGeekYouNeed
TheGeekYouNeed

Reputation: 7539

Use the Application_Error event handler in the global.asax file to redirect the user to ~/error/meh.aspx

in global.asax

 protected void Application_Error(object sender, EventArgs e)
 {
      Response.Redirect("~/error/404.aspx");

 }

In your web.config, also add

  <customErrors mode="On" defaultRedirect="/error/404.aspx" />

Upvotes: 0

Related Questions