2009-11-11 3 views
2

J'ai le site asp.net avec la coutume 404.htm. Il est configuré avec la section customErrors pour gérer aspx.Personnalisé 404 page pour le site ASP.net sur IIS7 pour nonasp.net URL

<customErrors mode="On" defaultRedirect="404.htm">
<error statusCode="403" redirect="404.htm" />
<error statusCode="404" redirect="404.htm" />
</customErrors>
<system.webServer>
<httpErrors>
<error statusCode="404" path="404.htm" />
<error statusCode="500" path="404.htm" />
</httpErrors>
<modules runAllManagedModulesForAllRequests="true"> ...
</system.webServer>

Il gère bien wrongname.aspx. Mais pour les demandes non-aspx telles que wrongname.htm IIS7 renvoie toujours un message d'erreur générique, pas ma coutume. Comment le forcer à faire cela, disons, pour toutes les erreurs sur ce site, y compris 500? Dois-je écrire un module ou est-il possible de le déclarer?

Répondre

0

Vous pouvez définir des pages d'erreur personnalisées pour la plupart des erreurs HTTP via les paramètres IIS de votre site Web. (Dans IIS 5, il s'agit de l'onglet Propriétés-> Erreurs personnalisées, vous ne savez pas où vous le trouverez pour IIS7)

0

Pour que le Custom 404 s'applique, le bit approrpiate d'IIS doit être configuré pour gérer le extension que vous utilisez.

Pour le pipeline intégré dans IIS7, je pensais (bien que IIS7 rende la vie intéressante) que la valeur par défaut était de traiter toutes les extensions. Commencez par vérifier si l'application est en cours d'exécution dans Classic ou Integrated - si le premier fait alors partie du problème, si ce dernier ... Je dois travailler à chaque fois (je ne sais pas) t le fais assez).

0

Lors d'un test en local, iis7 aura tendance à vous montrer un message d'erreur générique, sauf si vous ajoutez un attribut à httpErrors, errorMode="Custom". Vous devrez modifier C:\Windows\System32\inetsrv\config\applicationHost.config pour autoriser cela.

Questions connexes