Localisation: 1&1 FAQ ->Scripts / Programmation->ASP.NET->Article #9

Hébergement Windows Cet article n'est applicable qu'aux hébergements Windows.

Personnaliser la page d’erreur 404
A l’aide d’un fichier web.config il vous est possible de personnaliser la page d’erreur 404.

Voici le code à insérer dans un fichier web.config

Fichier 1: web.config
<configuration>
  <system.web>
    <customErrors mode="On">
      <error statusCode="404" redirect="erreur404.htm"/>
    </customErrors>
  </system.web>
</configuration>


Il est même possible de vous faire envoyer un mail si vous effectuez une redirection vers une page ASP.net.
Voici l’exemple d’un script à cet fin

Fichier 2: erreur404.aspx
<%@ Page Language="C#" Debug="false" ContentType="text/html"
ResponseEncoding="iso-8859-1" %>
<% @Import Namespace="System.Web.Mail" %>
<script runat="server" Language="c#">
public void Page_Load(Object Src, EventArgs E)
{
    string httpHost = Request.ServerVariables["HTTP_HOST"];

    MailMessage mail = new MailMessage();
    mail.To = "webmaster@" + httpHost;
    mail.From =  "webmaster@" + httpHost;
    mail.Subject = "Un lien brisé est trouvé " + httpHost;
    mail.Body = "La page " + =
     Request.QueryString.Get("aspxerrorpath") + " ne peut le " + DateTime.Now.ToString("d") + " à " +
     DateTime.Now.ToString("t") + " sur" + httpHost + " n est pas disponible = actuellement.";
    SmtpMail.SmtpServer = "mrvnet.kundenserver.de";
    SmtpMail.Send(mail);
}
</script>


<html>

<head>
<meta http-equiv="Content-Language" content="de">
<meta http-equiv="Content-Type" content="text/html; =charset=windows-1252">
<title>Error 404</title>
</head>

<body>

<p align="center">
	<font size="1" face="Verdana, Arial, Helvetica, sans-serif">
	<b><font color="#999999" size="7" face="Arial">Error 404</font><br></b>
	<font color="#999999"> The requested File<% Response.Write(" <b><i>"
+ Request.QueryString.Get("aspxerrorpath") + "</i></b>"); %>
	was not found<% Response.Write(" on " +
Request.ServerVariables["HTTP_HOST"]); %>.<br>

	<b>Back to <a href="../../default.aspx">
    <font color="#999999">Homepage</b></font></a>
    </font>
</p>

</body>

</html>