2010-10-20 6 views
3

Pour une raison quelconque, quand je reçois une erreur d'exécution ASP.NET, ce n'est pas charger ma page d'erreur personnaliséepage d'erreur ne montrant

<customErrors mode="On" defaultRedirect="app_offline.htm" redirectMode="ResponseRewrite"> 
    <error statusCode="404" redirect="app_offline.htm"/> 
     <error statusCode="500" redirect="app_offline.htm"/> 
</customErrors> 

C'est dans mon web.config.

Je suis toujours obtenir ce bien et ça ne se charge pas mon erreur page .htm:

Server Error in '/' Application. 
Runtime Error 
Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine. 

Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off". 

<!-- Web.Config Configuration File --> 

<configuration> 
    <system.web> 
     <customErrors mode="Off"/> 
    </system.web> 
</configuration> 


Notes: The current error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's <customErrors> configuration tag to point to a custom error page URL. 

<!-- Web.Config Configuration File --> 

<configuration> 
    <system.web> 
     <customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/> 
    </system.web> 
</configuration> 
+0

Qu'est-ce que * vous * obtenez? –

+0

Je vais mettre à jour le fil ... Je reçois l'erreur typique sur les erreurs personnalisées. Ceci est hébergé sur discountasp.net – PositiveGuy

+0

Pourquoi utiliser l'app_offline.htm comme erreur personnalisée? ce fichier tout d'abord s'il existe, vous arrêtez votre application web. Deuxièmement, ouvrez les erreurs pour voir la véritable erreur. (ou voir votre journal) – Aristos

Répondre

1

je soupçonne que ce qui se passe est que ASP.NET ne peut pas trouver votre page d'erreur personnalisée. Le chemin d'accès à votre fichier de page d'erreur doit être relatif ou absolu. Donc, soit:

<customErrors mode="On" defaultRedirect="~/app_offline.htm" redirectMode="ResponseRewrite"> 
    <error statusCode="404" redirect="~/app_offline.htm"/> 
    <error statusCode="500" redirect="~/app_offline.htm"/> 
</customErrors> 

Ou:

<customErrors mode="On" defaultRedirect="http://mysite.com/app_offline.htm" redirectMode="ResponseRewrite"> 
    <error statusCode="404" redirect="http://mysite.com/app_offline.htm"/> 
    <error statusCode="500" redirect="http://mysite.com/app_offline.htm"/> 
</customErrors> 

devrait résoudre votre problème.

+0

n'est pas seulement le nom de la page relative déjà? – PositiveGuy

+0

vous n'avez pas toujours besoin d'utiliser ~. Bien sûr, vous pouvez mais vous pouvez également utiliser redirect = "app_offline.htm" comme il est déjà à la racine de mon application et je suis en train d'attaquer root quand je vais sur mon site déjà ... pas besoin de l'extra ~ – PositiveGuy

+0

merci pour le essayez cependant ... et votre temps. – PositiveGuy

0

Avez-vous des détails sur l'erreur réelle si vous réglez le mode = "Off"? Si vous obtenez toujours la même page d'erreur par défaut, vous pouvez trouver la solution dans ce post:

CustomErrors mode="Off"

7

Je suis assez sûr que app_offline.htm est un nom de fichier réservé dans ASP.NET qui sera toujours servi s'il est présent sur le serveur. Essayez de le renommer error.htm et mettez à jour votre bloc <customErrors /> pour qu'il corresponde.

+0

Ce n'est pas ça. J'ai exactement le même problème et ma page est appelée DisplayMyVeryOwnSpecialError.htm –

+0

Si vous lisez la question originale, vous pouvez voir qu'il a app_offline.htm configuré comme 'defaultRedirect', ainsi que' redirect' pour 404 et 500. app_offline .htm sera toujours servi comme je l'ai dit, donc la réponse est valide. Je soupçonne que vous avez un problème sans rapport. –

+0

Je pense que vous avez mal lu certaines informations, parce que ce que app_offline.htm a fait, c'est qu'il a déchargé votre application, si le fichier était dans le répertoire racine de l'application. Évidemment, il n'a pas de problème avec l'application déchargée, mais plutôt avec la page d'erreur ne s'affiche pas. En plus de cela, je ne pense pas que la fonctionnalité app_offline.htm était dans .NET 3.5 comme le dit CoffeeAddict. –

0

Problème était mon site fonctionnait sous .NET 3.5 quand il s'agit d'une application 4.0