fichier ''.htaccess''
activer l'utilisation de .htaccess
vim /etc/apache2/apache2.conf
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
redirection permanante
<Files .htaccess>
order allow,deny
allow from all
</Files>
Redirect permanent /index.htm http://m2asr2008.free.fr/spip/
interdire le listage d'un répertoire
mais pas l'accès à ses fichiers (si on en connaît l'url complète)
options -indexes
interdire l'accès complet à un répertoire
deny from all
accès protégé par mot de passe
Authname “Zone protégée”
AuthUserFile <path>/.htpasswd
AuthType Basic
<limit GET POST>
require valid-user
</limit>
''.htpassword'' associé
encryptage à l'aide de la commande unix htpasswd -c .htpasswd <user> ou du site Http://www.libstat.com/pages/protection.htm
mettre directement le résultat dans le fichier, 1 user par ligne, pas de retour à la ligne inutile (pas de ligne vide ni de ligne finale)
exemple pour laurent / laurent :
laurent:wIBNwrmaAAxaM
attention : vérifier si l'hébergeur supporte le cryptage des mot de passe
gestion des erreurs
ErrorDocument 400 /erreur.php?erreur=400<br>
ErrorDocument 401 /erreur.php?erreur=401<br>
ErrorDocument 402 /erreur.php?erreur=402<br>
ErrorDocument 403 /erreur.php?erreur=403<br>
ErrorDocument 404 /erreur.php?erreur=404<br>
ErrorDocument 405 /erreur.php?erreur=405<br>
ErrorDocument 500 /erreur.php?erreur=500<br>
ErrorDocument 501 /erreur.php?erreur=501<br>
ErrorDocument 502 /erreur.php?erreur=502<br>
ErrorDocument 503 /erreur.php?erreur=503<br>
ErrorDocument 504 /erreur.php?erreur=504<br>
ErrorDocument 505 /erreur.php?erreur=505<br>
page php de traitement ''erreur.php''
<?php
switch($_GET['erreur']){
case '400':
echo 'Echec de l\'analyse HTTP';
break;
case '401':
echo 'Le pseudo et/ou le mot de passe n\'est pas correct !';
break;
case '402':
echo 'Le client doit reformuler sa demande avec les bonnes données de paiement.';
break;
case '403':
echo 'Requête interdite !';
break;
case '404':
echo 'La page n\'existe pas ou n\'existe plus !';
break;
case '405':
echo 'Méthode non autorisée';
break;
case '500':
echo 'Erreur interne au serveur ou serveur saturé';
break;
case '501':
echo 'Le serveur ne supporte pas le service demandé';
break;
case '502':
echo 'Mauvaise passerelle';
break;
case '503':
echo ' Service indisponible';
break;
case '504':
echo 'Trop de temps à la réponse ';
break;
case '505':
echo 'Version HTTP non supportée ';
break;
default:
echo 'Erreur !!';
}
?>
interpréter le php dans le html
AddType application/x-httpd-php .html
AddType application/x-httpd-php .htm
URL rewriting (redirection soit disant silencieuses)
à valider
Options +FollowSymlinks<br>
RewriteEngine on<br>
RewriteRule ^photos/*$ /DEV/galleries/$1 [QSA,L]
modification des listing fichiers
http://www.commentcamarche.net/forum/affich-2388720-ajout-de-pub-a-mon-insu-sur-site-perso-free –> exemple de suppression de pub chez free : http://laulalzelaulau.free.fr/DEV/galleries/2004/
http://luzerne.free.fr/Rep/htaccess/jdn_htaccess.shtml
http://www.blup.fr/2004/07/05/tuning-apache-les-doigts-dans-les-plumes/ –> exemple d'amélioration de listing : IndexOptions FancyIndexing SuppressDescription NameWidth=*
http://ldbglobe.fried-rice.net/blog/post/2004/10/08/42-autoindex-apache-et-htaccess –> exemple de custo complete : http://ldbglobe.fried-rice.net/public/2004/10
exemple d'amélioration de listing : IndexOptions FoldersFirst IgnoreCase FancyIndexing IconsAreLinks HTMLTable XHTML SuppressDescription