Comment générer un fichier .htaccess ?

Définition

Qu'est qu'un fichier .htaccess ?

Le but principal des fichiers .htaccess est de créer des protections de ressources par dossiers. Avec les serveurs web modernes, il y a beaucoup plus de possibilités offertes par les fichiers .htaccess. Par exemple : pages d'erreurs personnalisées, contrôle d'accès basé sur les adresses IP, redirection automatique d'utilisateurs, empèchement de lister un dossier et l'utilisation de fichiers différents comme fichiers index.

Cas pratiques

Créer une page d’erreur personnalisée

ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php

Comment faire pour configurer le fuseau horaire sur votre serveur

SetEnv TZ Europe/Paris

Bloquer des adresses IP

allow from all
deny from 1.1.1.1.1
deny from 1.1.1.1.1

Redirections permanentes

Redirect 301 /mapage.html http://www.monsite.com/manouvellepage.html

Redirections de domaine

RewriteCond %{HTTP_HOST} ^www.mon-site.com [NC]
RewriteRule ^(.*)$ http://www.mon-site.fr/$1 [QSA,R=301]

E-mail de l’administrateur du serveur

ServerSignature EMail
SetEnv SERVER_ADMIN monadresse@monsite.com

Protéger ses images

Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?monsite.com/ [nc]
RewriteRule .*.(gif|jpg|png)$ http://www.monsite.com/images/images-de-substitution.jpg [nc]

Rendre tout un site indisponible pour maintenance

RewriteEngine on
RewriteRule maintenance.html - [L]
RewriteCond %{REMOTE_ADDR} !1.1.1.1.1
RewriteRule .* /maintenance.html [L]

Empêcher le listage des répertoires

Options All -Indexes

Page par défaut

DirectoryIndex contact.html

Protéger vos répertoires et fichiers

# Protéger un  fichier

AuthType Basic
AuthName "Accès restreint"
AuthUserFile /home/path/.htpasswd
Require valid-user


# Protéger un répertoire
AuthType basic
AuthName "Accès restreint"
AuthUserFile /home/path/.htpasswd
AuthGroupFile /dev/null
Require valid-user

Masquer ou afficher les erreurs php

php_flag display_errors off

Procédure

Comment créer un fichier .htaccess ? 

Créez un fichier texte sur votre ordinateur à l'aide d'un éditeur de texte standard (Notepad par exemple). Enregistrez le fichier sous le nom .htaccess.

Quelles sont les directives autorisées ?

  • AuthConfig : Directives d'autorisation (AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, etc.).

  • Indexes : Directives de contrôle de l'indexation répertoire (AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, etc.).

  • Limit : Directives contrôlant l'accès des hôtes (Allow, Deny and Order).

  • FileInfo : Directives contrôlant les types de documents (DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter, and mod_mime Add and Remove directives, etc.), document meta data (Header, RequestHeader, SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain, CookieStyle, CookieTracking, CookieName), directives mod_rewrite (RewriteEngine, RewriteOptions, RewriteBase, RewriteCond, RewriteRule) et and Action pour mod_actions.

La directive " Options" est désactivé : Si ce paramètre est présent dans votre fichier .htaccess, cela produira une erreur. Nous vous invitons donc à commenter toutes les lignes commençant par cette directive ( Ajouter un "#" en début de ligne. )
Toutefois, l'option "+FollowSymLinks" de la directive "Options" est active. Cette fonctionnalité est utilisée dans de nombreux CMS comme Joomla. Vous pouvez donc commenter la ligne associée à ce paramètre dans le fichier .htaccess sans soucis.


Référence article : 86

Notez cet article

Vous avez noté 0 étoile(s)

Cet article a été lu 7694 fois.

Note : 4.2 / 5 - 5 avis.


Cet article vous a t'il été utile ?

Merci !

N'hésitez pas à commenter nos pages afin de nous aider à les améliorer si besoin.

Nous sommes désolés

Comment pouvons-nous l'améliorer ? (Indiquez votre addresse mail dans le corps du message si vous désirez recevoir une réponse)

Si vous désirez recevoir une réponse, merci d'indiquer votre mail dans votre commentaire.

comments powered by Disqus
Top