Login

Documentation

Le fichier .htaccess

Les fichiers .htaccess (ne pas oublier le point) sont des fichiers de configuration d'Apache. Voici quelques exemples d'utilisation les plus courantes.

Protéger un répertoire par un mot de passe

Portégez à l'aide d'un login et d'un mot de passe l'accès à des fichiers par certains utilisateurs.

AuthUserFile /path/to/.htpasswd
AuthName "Accès protégé" 
AuthType Basic 
Require valid-user

Le fichier .htpasswd contient la liste des couples de login/mot de passe autorisés. Il peut être placé n'importe où, mais ne doit pas être lisible de l'extérieur.

Pour créer ce fichier .htpasswd :

htpasswd -c .htpasswd user

En remplaçant user par le nom d'utilisateur souhaité. L'outil vous demande alors d'entrer à deux reprises le mot de passe correspondant (note : il est tout à fait normal que rien ne s'affiche).

Limiter l'accès à un répertoire

Vous avez la possibilité de bloquer l'accès à un répertoire pour un domaine ou une adresse IP. Et inversement, vous pouvez n'autorisez l'accès au répertoire que pour les IPs et/ou domaines que vous souhaitez.

order deny,allow 
deny from all 
allow from { adresse IP / domaine }
require user { Login de l'utilisateur }

Personnaliser les messages d'erreur (403, 404 ...)

La syntaxe suivante va définir des pages d'erreurs personnalisées :

ErrorDocument 403 /erreurs/403.php 
ErrorDocument 404 /erreurs/404.php

Cette syntaxe est valable quelque soit le code de la réponse HTTP.

Redirection

Cette fonctionnalité est disponible directement en déclarant un site de type Redirection, mais vous pouvez le faire grâce au fichier .htaccess.

Redirect 301 {Fichier source}{Fichier destination}

Vous pouvez aussi rediriger un répertoire entier de cette manière :

RedirectMatch 301 {Répertoire source}(.*) {Répertoire destination}/$1

Réécriture d'URL

La réécriture d'URL (ou URL Rewriting) consiste à modifier la structure des liens.

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ {Fichier source}/$1

Cette pratique est souvent utilisée afin d’insérer des mots clés dans les adresses afin d'améliorer l'indexation de vos pages et donc le référencement de votre site.

Erreurs possibles

Invalid command '\xef\xbb\xbf', perhaps misspelled or defined by a module not included in the server configuration

Cette erreur (visible dans le fichier error.log) est due au fait que le fichier .htaccess n'a pas été enregistré dans le bon format. Veillez à bien faire attention de sauvegarder votre fichier sans BOM. C'est généralement une option dans votre éditeur.


Last updated: 08 Oct. 2013 at 09:26