ERREUR 401 

Outils pour webmaster. Trucs et astuces en code HTML et JavaScript : améliorer son site internet

Descriptif : du côté serveur l'erreur 401 est provoquée par la tentative infructueuse d'un visiteur de pénétrer dans un dossier protégé par mot de passe grâce aux fichiers .htaccess et .htpaswwd.
    A ce moment là, le serveur renvoit au visiteur une page d'erreur 401 ne contenant, la plupart du temps, que peu de choses.
On va donc la substituer par une page personnalisée qui vous enverra un mail immédiat afin que vous ayez connaissance de la tentative d'intrusion. Cette page affichera les renseignements sur le visiteur afin qu'il soit informé que sa tentative et ses coordonnées sont connues et enregistrées afin d'être traitées. Ces renseignements seront, bien sûr, inclus dans le mail que vous recevrez.

Exemple : voici la page qui va s'afficher au visiteur.

 

Vous n'avez pas d'autorisation pour accéder à cette page.
401

Veuillez contacter le webmaster en cliquant ici.

Les renseignements suivants ont été enregistrés : 
- Votre provenance : https://www.toulouse-renaissance.net/c_outils/c_erreur401.htm;
- Page demandée : https://www.toulouse-renaissance.net/false/protect/index.html
- Votre navigateur : Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; MyIE2; NetCaptor 7.1.0)
- Votre adresse IP : http://240.80.211.255
- Votre nom de domaine : ts1-143.f3081.globetrotter.net

Date 02-06-2003 - 17:14


Mise en oeuvre : vous devez tout d'abord avoir un dossier protégé par .htaccess et .htpasswd.

Sélectionnez et copiez directement à l'écran le code ci-dessous et collez-le dans NOTEPAD (Bloc Note)

Dans votre fichier .htaccess qui se trouve à la racine de votre site, ajoutez la ligne :

ErrorDocument 401 /error401.php

Sauvegardez-le à la racine de votre site.

- Créez le fichier error401.php

Sélectionnez et copiez directement à l'écran le code ci-dessous et collez-le dans NOTEPAD (Bloc Note)

<?
$to="vous@votre_site.com";
$sujet="ERREUR 401 sur MON SITE.";
if(empty($HTTP_REFERER)) { $provenance="Pas de lien intermédiaire, connexion directe"; } else { $provenance=$HTTP_REFERER; }
$message="\nUne erreur 401 s'est produite sur MON SITE.\n\nProvenance : ".$provenance.";
Page : ".$SCRIPT_URI."\nNavigateur : $HTTP_USER_AGENT\nAdresse IP : http://$REMOTE_ADDR\nNom de domaine : ".gethostbyaddr($REMOTE_ADDR)."\n";
@mail($to,$sujet,$message,"FROM:Erreur401");
echo("<title>ACCES NON AUTORISE</title>");
echo("<p align=\"center\"><u><font size=\"5\" color=\"#FF0000\"><strong>Vous n'avez pas d'autorisation pour accéder à cette page.</strong></font></u></p>");
echo("<p align=\"center\"><font size=\"4\"<strong>Veuillez contacter le webmaster en cliquant <a href=\"http://www.mon_site.com/index.htm\"><big>ici</big></a>.</font></p>");
$warning="\n<p><strong>Les renseignements suivants ont été enregistrés : </strong><br>\n\n- Votre provenance : ".$provenance.";<br>
- Page demandée : ".$SCRIPT_URI."\n<br>- Votre navigateur : $HTTP_USER_AGENT\n<br>- Votre adresse IP : http://$REMOTE_ADDR\n<br>- Votre nom de domaine : ".gethostbyaddr($REMOTE_ADDR)."\n";
echo $warning;
echo("</p>");
$date = date("d-m-Y");
$heure = date("H:i");
echo("Date $date - $heure");
echo("<p> </p>");
echo("</strong>");
?>

Sauvegardez-le à la racine de votre site.

C'est fini.

Remarque : Vous avez sur la page d'accueil tous les renseignements concernant la mise en oeuvre des fichiers .htaccess, .htpasswd ainsi que le fichier .htaccess contenant le code d'erreur 401 ou 404.


Retour