Accueil => Conseils référencement => ".htaccess" et ".htpasswd"
FICHIER ".htaccess" ET ".htpasswd"
Deux type de fichier ".htaccess" peuvent être installés sur un site :
- Il est parfois nécessaire que l'accès à certains répertoires soit protégé (pour raison de sécurité, comme des pages d'administration, ou lorsque nous souhaitons une distribution restreinte du contenu).
Pour assurer cette protection, nous avons besoin de 2 fichiers ".htaccess" et ".htpasswd" qui seront installés dans le répertoire à sécuriser. Les répertoires fils sont également protégés.
Cette méthode boquera les robots des moteurs, nous verrons qu'il existe 2 autres méthodes.
Le fichier ".htaccess" contient les lignes suivantes :
AuthUserFile /chemin complet/.htpasswd
AuthGroupFile /dev/null
AuthName "admin"
AuthType Basic
<Limit GET POST>
require valid-user
</Limit>
Exemple de chemin complet : home/~mon_compte/www/mon_repertoire_interdit/
Le chemin peut être retrouvé en créant un fichier qui sera installé dans le répertoire à protéger et que vous pourriez nommer chemin_absolu.php, il contiendra la ligne suivante :
<? echo realpath("my_chemin_absolu.php"); ?>
Installez-le dans le répertoire à protéger, faites-le tourner.
Vous pourrez lire le chemin absolu.
Ex : /home/MonCompte/public_html/MonRepertoire/chemin_absolu.php
Dans ce cas, le chemin absolu est :
Ex : /home/MonCompte/public_html/MonRepertoire/
Le second fichier ".htpasswd" contiendra le(s) login(s)/password(s).
Les passwords étant cryptés, il faudra les passer dans une petite moulinette qui les encodera.
Pour générer ces fichiers, vous pouvez utiliser le petit outil que j'ai mis à votre disposition : ICI - Générateur de fichiers ".htaccess" ET ".htpasswd"
- Puisque je vous parle des fichiers ".htaccess" et ".htpasswd", j'en profite pour vous suggérer une page "404" dynamique. Elle a pour but lorsqu'un visiteur tape un nom de page erronné ou inexistante, de présenter à l'internaute une page dite "404" lui permettant de se réorienter et surtout qu'il ne quitte pas notre site. Cerise sur le gateau, le script va envoyer un message au webmaster, très utile pour débuger le site !
Essayer cette adresse inexistante pour comprendre le mécanisme : http://www.referencement-de-sites.info/toto.html.
Le fichier ".htaccess" devra contenir les lignes ci-dessous :
ErrorDocument 402 /404.php
ErrorDocument 403 /404.php
ErrorDocument 404 /404.php
ErrorDocument 500 /404.php
Vous devez construire une page 404.html ou 404.php.
Pour le site KITS-GRAPHIQUES-TEMPLATES.com, j'ai opté pour une solution dynamique; dès que la page 404 est sollicitée, un mail est envoyé donnant quelques paramètres.
Voici le petit script que j'ai inséré :
$to="adresse_email_du_webmaster";
$sujet="ERREUR 404 sur LE SITE.";
if(empty($HTTP_REFERER))
{
$provenance="Pas de lien intermédiaire, connexion directe";
}
else { $provenance=$HTTP_REFERER; }
$message = '
Une erreur 404 s'est produite sur le SITE.
-----------------------------------------------------------
Provenance : ' . $provenance . '
Page : ' . $SCRIPT_URI . '
Navigateur : ' . $HTTP_USER_AGENT . '
Adresse IP : http://' . $REMOTE_ADDR . '
Nom de domaine : ' . gethostbyaddr($REMOTE_ADDR) . '
Date/heure : ' . DATE("d/m/Y H:i") . '
';
@mail($to,$sujet,$message,"FROM:404@adresse_du_site");
|