10 extraits de code et htaccess utiles
Publié: 2020-09-10.htaccess
est un fichier que chaque administrateur Web devrait connaître et comprendre. À son niveau de base, il contrôle l'accès aux répertoires de votre site. Mais il y a bien plus que ce que vous pouvez faire, comme les extraits de cet article vous le montreront.
Si vous souhaitez apprendre les bases de .htaccess
, vous devriez consulter notre article Introduction à .htaccess , qui explique assez bien tout ce dont vous aurez besoin pour être opérationnel.
Vous pourriez également aimer ces extraits de requête SQL WordPress utiles ou ces extraits qui rendent WordPress convivial pour vos clients.
1. Contrôler l'accès aux fichiers et aux répertoires
La protection par mot de passe est une chose, mais parfois vous devrez peut-être empêcher complètement les utilisateurs d'avoir la possibilité d'accéder à un fichier ou à un répertoire particulier. Cela se produit généralement avec les dossiers système, tels que le dossier includes
pour lequel les applications auront besoin d'accéder, mais aucun utilisateur n'aura jamais besoin de ce privilège.
Pour cela, collez ce code dans un fichier .htaccess
et déposez-le dans le répertoire :
Cependant, cela bloquera l'accès à tout le monde, y compris vous. Pour vous accorder l'accès, vous devez spécifier votre adresse IP. Voici le code :
xxx.xxx.xxx.xxx
est votre IP. Si vous remplacez les trois derniers chiffres par 0/12
par exemple, cela spécifiera une plage d'adresses IP au sein du même réseau, vous évitant ainsi d'avoir à répertorier séparément toutes les adresses IP autorisées.
Si vous souhaitez bloquer l'accès à un fichier particulier, y compris .htaccess
lui-même, utilisez plutôt l'extrait suivant :
De même, si vous souhaitez autoriser des adresses IP données, répertoriez-les avec allow from
.
Si vous souhaitez bloquer l'accès à des types de fichiers particuliers, utilisez plutôt ceci :
2. Désactivation de la navigation dans le répertoire
Pour empêcher la navigation dans les répertoires, ajoutez ceci :
Cependant, si pour une raison quelconque vous souhaitez activer la navigation dans les répertoires, modifiez-la comme suit :
3. Accélérer les temps de chargement en compressant les fichiers
Vous pouvez compresser n'importe quel type de fichier, pas seulement des images. Par exemple, pour compresser des fichiers HTML , utilisez ceci :
Pour compresser les fichiers TEXT , utilisez ceci :
Vous pouvez également compresser JavaScript ou ajouter une compression à plusieurs types de fichiers avec une seule commande :
Sinon, si vous souhaitez compresser tous vos fichiers JavaScript, HTML et CSS avec GZIP, vous pouvez utiliser ceci :
4. Protégez votre site contre les liens dynamiques
Si vous ne voulez pas que vos images soient liées, ajoutez ceci à votre fichier .htaccess
:
Remplacez simplement votredomaine.com par le vôtre, et vous êtes prêt à partir.
5. Bloquer les visiteurs référés à partir d'un domaine particulier
Si vous avez des utilisateurs d'un domaine particulier que vous n'accueillez pas, vous pouvez les bannir de votre site. Par exemple, si votre site est répertorié dans un endroit dont vous ne voulez pas de trafic (c'est-à-dire des sites pour adultes, des sites blackhat, etc.), vous pouvez les servir avec une page 403 Forbidden. Vous devez avoir activé mod_rewrite
, mais ça devrait aller puisqu'il est généralement activé. Ajoutez cet extrait :
Vous devez remplacer bannedurl1.com
et bannedurl2.com
etc. par les noms de domaine que vous souhaitez mettre sur liste noire. Vous pouvez utiliser l'indicateur [NC]
car il spécifie que le nom de domaine que vous avez entré n'est pas sensible à la casse. Le drapeau [F]
spécifie l'action à entreprendre - dans ce cas pour afficher l'erreur 403 Forbidden. Si vous souhaitez interdire plusieurs sites, utilisez le drapeau [NC,OR]
pour chaque domaine sauf le dernier et si vous souhaitez interdire un seul domaine, utilisez uniquement le drapeau [NC]
.
6. Bloquer les demandes d'agents utilisateurs particuliers
Si vos fichiers journaux montrent des agents utilisateurs particuliers (bots ou spiders), vous pouvez ajouter quelques lignes à .htaccess
et leur refuser l'accès à votre site :
Remplacez badbot1
, badbot1
, etc. par les noms des bots de vos fichiers journaux. Cela devrait éloigner ces programmes de votre site.
7. Mise en cache des fichiers
Une autre façon d'accélérer les temps de chargement de votre site consiste à mettre en cache les fichiers. Voici ce que vous devez ajouter pour mettre les fichiers en cache :
Vous pouvez ajouter plus de types de fichiers (ou en supprimer certains) à la séquence de fichiers répertoriés dans cet exemple - faites ce qui vous convient. Vous pouvez également utiliser max-age
pour spécifier la durée en secondes pendant laquelle vos fichiers vivront dans le cache.
8. Désactivation de la mise en cache pour des types de fichiers particuliers
Si vous ne souhaitez pas mettre en cache des types de fichiers particuliers, il est plus facile de ne pas les inclure dans la séquence de cache. Cependant, des fichiers peuvent parfois être mis en cache même si vous ne les répertoriez pas explicitement ici, et dans ce cas, vous pouvez désactiver la mise en cache uniquement pour eux. Le plus souvent, vous souhaiterez désactiver la mise en cache pour les fichiers dynamiques, tels que les scripts. Voici comment faire:
Canalisez simplement les fichiers pour lesquels vous souhaitez désactiver la mise en cache, et c'est tout.
9. Contournement de la boîte de dialogue de téléchargement
Par défaut, lorsque vous essayez de télécharger un fichier à partir d'un serveur Web, une boîte de dialogue vous demande si vous souhaitez enregistrer le fichier ou l'ouvrir. Ce dialogue est particulièrement irritant avec les fichiers multimédias volumineux ou les fichiers PDF. Si les fichiers que vous avez téléchargés sur votre serveur sont destinés à des téléchargements, vous pouvez épargner les ennuis aux utilisateurs et procéder directement au téléchargement. Voici ce que vous devez définir dans .htaccess
:
10. Renommer un fichier .htaccess
Si pour une raison quelconque, principalement liée à la sécurité, vous souhaitez renommer votre fichier .htaccess
, il est très facile de le faire. En théorie, renommer un fichier .htaccess
ne devrait pas causer de problèmes avec les applications exécutées sur votre serveur, mais si par hasard vous remarquez de tels problèmes après avoir renommé le fichier, renommez-le simplement avec son nom d'origine.
Vous devez également mettre à jour toutes les entrées du fichier lui-même ou partout où .htaccess
est mentionné ; sinon vous obtiendrez beaucoup d'erreurs.
11. Modification d'une page d'index par défaut
Si vous voulez que votre page d'index soit différente de la valeur par défaut index.html
, index.php
, index.htm
, etc., c'est très facile à faire. Voici ce que vous devez ajouter au .htaccess
:
Remplacez mypage.html
par l'URL réelle de la page que vous souhaitez utiliser comme index et vous avez terminé.
12. Redirection vers une connexion https sécurisée
Si vous utilisez HTTPS et que vous souhaitez rediriger les utilisateurs vers les pages sécurisées de votre site, utilisez ceci :
13. Restreindre les limites de téléchargement de fichiers en PHP, la taille maximale des données de publication, le temps d'exécution maximal du script, etc.
.htaccess
vous permet de définir certaines valeurs qui affectent directement vos applications PHP. Par exemple, si vous souhaitez imposer des limites de téléchargement en PHP afin de ne pas manquer d'espace d'hébergement à cause de fichiers volumineux, utilisez ceci :
Bien sûr, vous pouvez définir la valeur sur tout ce que vous jugez approprié - 15M (Mo) dans cet exemple n'est pas figé. Vous pouvez également limiter la taille maximale des publications pour le téléchargement en PHP. Pour ce faire, ajoutez ceci :
De même, vous pouvez remplacer 10M
par n'importe quelle valeur qui vous convient. Si vous ne voulez pas que les scripts s'exécutent indéfiniment, vous pouvez limiter leur temps d'exécution à l'aide des éléments suivants :
240
est le nombre de secondes avant que le script ne se termine, et comme vous le devinez, il peut s'agir de n'importe quelle valeur. Enfin, si vous souhaitez limiter le temps pendant lequel un script peut analyser les données d'entrée, utilisez ceci :
Et définissez n'importe quelle valeur en secondes qui vous convient.
14. Déguiser les types de fichiers
Parfois, vous ne voudriez pas que les utilisateurs connaissent les types de fichiers des fichiers de votre site. Une façon de cacher ces informations est de les déguiser. Par exemple, vous pouvez faire en sorte que tous vos fichiers ressemblent à des fichiers HTML ou PHP :
Il y a beaucoup plus à faire avec .htaccess
. Par exemple, vous pouvez définir la traduction automatique des pages de votre site, ou définir le fuseau horaire du serveur, ou supprimer le www des URL, ou utiliser des listes de répertoires fantaisistes, etc. Dans tous les cas, avant de commencer des expériences avec .htaccess
, sauvegardez toujours l'original .htaccess
, donc si les choses ne se passent pas comme prévu, vous avez une copie de travail à laquelle revenir.