Blog inspirant depuis 2008
  • Pin It

Conseils et astuces pour votre fichier .htaccess

Le fichier .htaccess de votre site web est très important puisqu’il sert Ă  contrĂ´ler et Ă  modifier certaines actions prĂ©cises dans votre site Internet.

Il permet d’effectuer plusieurs modifications concernant le SEO (Search Engine Optimization), la navigation, l’optimisation du temps de chargement et la sĂ©curitĂ© de votre site web.

Vous trouverez dans l’article qui suit quelques utilisations, trucs, astuces et conseils très intĂ©ressants et utiles pour votre fichier .htaccess.

RĂ©crire votre adresse URL sans les WWW

Une pratique SEO consiste Ă  s’assurer qu’il n’y ait qu’une seule adresse pointant vers votre site web afin d’Ă©viter les contenus dupliquĂ©s.

Forcer le retrait des WWW au début de votre adresse URL

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.marevueweb.com [NC]
RewriteRule ^(.*)$ http://marevueweb.com/$1 [L,R=301]

Forcer l’ajout des WWW au dĂ©but de votre adresse URL

RewriteEngine On
RewriteCond %{HTTP_HOST} ^marevueweb\.com$ [NC]
RewriteRule ^(.*)$ http://www.marevueweb.com/$1 [R=301,L]

Définir votre fuseau horaire « timezone »

Définir votre fuseau horaire à votre serveur peut être très utile si vous utilisez des fonctions PHP concernant la date et le temps. Par exemple un compte à rebours. Voici comment procéder pour définir votre fuseau horaire.

SetEnv TZ America/Montreal

Pour le SEO, créer des redirections 301 permanentes

Les moteurs de recherche ont dĂ©sormais la capacitĂ© de dĂ©tecter vos redirections 301 et d’ajuster leurs bases de donnĂ©es en consĂ©quence. Voici comment procĂ©der :

Redirect 301 /accueil http://www.marevueweb.com/

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

La même chose peut être utilisée pour les erreurs 401, 403, 500, etc.

Mettre en mémoire cache certains types de fichiers

InsĂ©rer certains types de fichiers dans votre mĂ©moire cache est une excellente mĂ©thode afin d’amĂ©liorer le temps de chargement de votre site web.

<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>

Le contraire peut également être effectué :

<FilesMatch ".(pl|php|cgi|spl|scgi|fcgi)$">
Header unset Cache-Control
</FilesMatch>

Protection contre le vol de bande passante

Il se peut que certaines personnes utilisent vos images directement via votre site web. Afin de prévenir ce vole de bande passante, vous pouvez utiliser ce code dans votre fichier .htaccess.

RewriteBase /
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?marevueweb.com/.*$ [NC]
RewriteRule .(gif|jpg|swf|flv|png)$ /feed/ [R=302,L]

Désactiver ou activer la navigation à travers vos répertoires

# désactive la navigation à travers vos répertoires
Options All -Indexes

# active la navigation à travers vos répertoires
Options All +Indexes

Modification votre page Index

Vous pouvez modifier la page d’accueil (index.html ou index.php par dĂ©faut) de votre site web pour une autre page.

DirectoryIndex produits.html

Ajout de différentes mesures de sécurité

Si vous désirez une meilleure protection contre certaines attaques populaires sur le web, voici quelques lignes de code qui pourront vous être utiles.

RewriteEngine On

# proc/self/environ
RewriteCond %{QUERY_STRING} proc/self/environ [OR]

# bloque un script essayant de définir une valeur mosConfig à travers votre URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]

# bloque un script essayant d'envoyer une requĂŞte base64_encode dans l'adresse URL
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]

# bloque un script essayant d'envoyer une balise <script> dans votre URL
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]

# bloque un script essayant de définir des variables globales PHP dans l'adresse URL
RewriteCond %{QUERY_STRING} GLOBALS(=|[|\%[0-9A-Z]{0,2}) [OR]

# bloque un script essayant de modifier une variable _REQUEST Ă  travers l'URL
RewriteCond %{QUERY_STRING} _REQUEST(=|[|\%[0-9A-Z]{0,2})

Avez-vous d’autres trucs Ă  partager avec nous concernant le fichiers .htaccess?

10 commentaires

  • Djolhan | 2010/11/24

    Warning: Undefined variable $default_avatar in /home/hochedez/public_html/marevueweb.com/wp-content/themes/marevueweb2012/comments.php on line 30

    Le passage sur les mesures de sécurité me plait bien, merci 🙂

  • Jfrz | 2010/11/28

    Warning: Undefined variable $default_avatar in /home/hochedez/public_html/marevueweb.com/wp-content/themes/marevueweb2012/comments.php on line 30

    Bonjour Ă  tous,

    Je viens vers vous car j’ai fais une fausse manipulation avec l’utilisation d’un fichier HTAccess et je ne trouve pas comment rĂ©soudre le problème !

    VoilĂ , j’ai un site sur lequel j’ai mis le fichier Htaccess suivant :

    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^www.site.com [NC]
    RewriteRule ^(.*)$ http://site.com/$1 [L,R=301]

    Sauf que l’hĂ©bergement de mon site est en multidomaine sur un autre site internet que je possède.

    Et depuis la manipulation je n’arrive plus Ă  accĂ©der aux autres pages du site, j’ai le message d’erreur suivant :

    Not Found

    The requested URL /experiences/ was not found on this server.

    C’est la première fois que j’utilisais un fichier HTAccess et je ne sais pas comment rĂ©soudre le problème.
    J’ai supprimĂ© le fichier Htacess mais cela ne change rien.

    Est-ce possible que le site garde en mémoire la modification ?
    Faut-il que je fasse une autre manipulation pour remettre le site ?

    Dans l’attente de vos rĂ©ponse,

    Merci d »avance.

  • Louis_Dea | 2010/11/28

    Warning: Undefined variable $default_avatar in /home/hochedez/public_html/marevueweb.com/wp-content/themes/marevueweb2012/comments.php on line 30

    Salut jf,

    Je te conseil de tĂ©lĂ©charger ton fichier .htacces de ton serveur, de supprimer tout le code qu’il y a dedans et de le remplacer sur ton serveur.

    J’attends de tes nouvelles Ă  savoir si ça a portĂ© fruits.

  • Jfrz | 2010/11/28

    Warning: Undefined variable $default_avatar in /home/hochedez/public_html/marevueweb.com/wp-content/themes/marevueweb2012/comments.php on line 30

    Merci Louis pour ta réponse rapide.

    Enfaite quand j’ai vu que ça fonctionnait plus. J’ai crĂ©Ă© un fichier vide .htaccess et je les copier Ă  la place de l’autre.
    Et j’ai toujours le mĂŞme problème qui persiste.

    Comment je peux faire ?

  • Jfrz | 2010/11/28

    Warning: Undefined variable $default_avatar in /home/hochedez/public_html/marevueweb.com/wp-content/themes/marevueweb2012/comments.php on line 30

    J’ai rĂ©ussi Ă  corriger le problème !!! Oufff 🙂

    Enfaite j’utilisais WordPress pour mon site, et je pouvais encore accĂ©der Ă  l’administrateur. J’ai donc remis les permaliens par dĂ©faut. Et ça m’a rĂ©initialisĂ© un nouveau htaccess par dĂ©fault !

    J’ai ensuite remis mes anciens paramètres et impeccable !

    Merci de ton aide,

    Jérémy.

  • Mrhassansadek | 2011/02/21

    Warning: Undefined variable $default_avatar in /home/hochedez/public_html/marevueweb.com/wp-content/themes/marevueweb2012/comments.php on line 30

    j’ai trouvĂ© le dĂ©but de cette article très important … i’ll be back again 🙂

    Merci beaucoup.

  • calendrier | 2013/06/06

    Warning: Undefined variable $default_avatar in /home/hochedez/public_html/marevueweb.com/wp-content/themes/marevueweb2012/comments.php on line 30

    Super !
    Merci pour ces précieux conseils.

    Une autre instruction utile est celle d’activer le PHP version 5, avec la ligne suivante:

    SetEnv PHP_VER 5

    Cet environnement n’est pas activĂ© par dĂ©faut, par exemple, chez Free !

  • Mahab | 2016/07/24

    Warning: Undefined variable $default_avatar in /home/hochedez/public_html/marevueweb.com/wp-content/themes/marevueweb2012/comments.php on line 30

    Bonjour,
    un pb avec Firefox pour mon site en mode sĂ©curisĂ© : le https://www.monsite.fr est bloquĂ© par Firefox et mon hĂ©bergeur me dit qu’il y a une « restriction au niveau des certificats wildcard et qu’ils ne peuvent rien faire Ă  ce sujet » (je ne comprends pas tout alors je cite).
    En utilisant votre astuce pour basculer le http://www.monsite.fr sur monsite.fr, cela fonctionne quand la barre d’adresse contient uniquement http://www.monsite.fr, cela ne marche pas quand la barre d’adresse contient http://www.monsite.fr ou https://www.monsite.fr
    J’ai essayĂ© en rajoutant une condition RewriteCond %{HTTPS}
    Cela marche quand la condition est off (http) mais cela ne marche toujours pas quand la condition est on (https)
    Une idée ?

  • Mahab | 2016/07/24

    Warning: Undefined variable $default_avatar in /home/hochedez/public_html/marevueweb.com/wp-content/themes/marevueweb2012/comments.php on line 30

    nb : en fait je viens de vérifier, cela ne marche pas pour Firefox mais également pour IE 11, Opera 38, Safari et google chrome !
    Il semblerait donc que le certificat est systĂ©matiquement contrĂ´lĂ© AVANT l’exĂ©cution du HTACCESS donc la redirection n’est jamais prise en compte !

  • HĂ©bergement domaine | 2023/08/25

    Warning: Undefined variable $default_avatar in /home/hochedez/public_html/marevueweb.com/wp-content/themes/marevueweb2012/comments.php on line 30

    merci pour cet article, quel impact du htacces sur un HĂ©bergement domaine : https://meilleurhebergeurweb.fr/hebergeur-nom-de-domaine/

Laisser un commentaire