Laut @ Amilas Beitrag und Bestätigung und Vervollständigung dieses Beitrags habe ich das gleiche Problem, ich grabe viel bei Google, hatte aber keine Chance, die richtige Antwort zu finden. Das Problem ist, wenn Sie mit arbeiten ASP.Net Web Application, ob es sich MVCum einen benutzerdefinierten Fehler handelt oder nicht, mit dem Sie auf die alte Art und Weise keinen benutzerdefinierten Fehler erzielen können Webform project.
Hier die Option, wenn Sie verwenden ASP.Net Web Application(ob es eine ist MVCoder nicht):
In meinen Szenarien möchte ich nur einen benutzerdefinierten Fehler für einen bestimmten 404-Fehler definieren. Der andere Fehler ist genauso definiert wie der 404-Fehler:
Senario1: Ihre benutzerdefinierte Seite ist eine einfache HTMLDatei und befindet sich in root:
<configuration>
<system.web>
<customErrors mode="Off" />
</system.web>
<system.webServer>
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="ErrorPage.html" responseMode="File" />
</httpErrors>
</system.webServer>
</configuration>
Senario2: Ihre benutzerdefinierte Seite ist eine
aspxSeite und wird platziert in
root:
<configuration>
<system.web>
<customErrors mode="Off" />
</system.web>
<system.webServer>
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="ErrorPage" responseMode="Redirect" />
</httpErrors>
</system.webServer>
</configuration>
Hinweis: Ich entferne die Aspx-Erweiterung aufgrund von RouteConfig.csin ASP.net application. Sie können sie verwenden, ErrorPage.aspxwenn Sie möchten. Sie ist optional.
Senario3: Ihre benutzerdefinierte Seite ist eine
aspxSeite und befindet sich in
[ex: Page folder in The root (~/Page/ErrorPage.aspx)]:
Der Tipp hier, den ich bemerkt habe, ist , dass Sie die Root-Adressierung
NICHT verwenden sollten~/ . Also adressiere ich einfach ohne
~/Markierung:
<configuration>
<system.web>
<customErrors mode="Off" />
</system.web>
<system.webServer>
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="Page/ErrorPage" responseMode="Redirect" />
</httpErrors>
</system.webServer>
</configuration>