Démarrer votre site WordPress en quelques minutes

10 astuces géniales avec .htaccess pour WordPress

Dernière mise à jour le 25 octobre 2020 Publié le 17 janvier 2015
htaccess pour wordpress

Le fichier .htaccess contrôle le serveur Apache. Il est très utile et permet de faire beaucoup de choses. Dans cet article, nous allons voir comment le fichier .htaccess peut vous aider avec la sécurité, le fonctionnement et l’utilisation de votre blog WordPress.

Avertissement: Lorsque vous modifiez ou éditez le fichier .htaccess de votre blog, soyez certain d’avoir fait une sauvegarde afin de pouvoir le réinitialiser au cas où quelque chose tourne mal.

1 – Rediriger ses flux RSS vers Feedburner avec .htaccess

Quel blogueur n’utilise pas Feedburner ? C’est sûr, Feedburner est un service très utile qui permet de savoir combien de personnes souscrivent à vos flux RSS. Le seul problème est que vous devez modifier les fichiers de votre thème pour changer l’url RSS. Heureusement, il y a une astuce toute simple ! En utilisant .htaccess vous économiserez beaucoup de temps ! N’oubliez pas de modifier la ligne 6 avant d’appliquer ce code.

# temp redirect wordpress content feeds to feedburner
<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{HTTP_USER_AGENT} !FeedBurner    [NC]
 RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]
 RewriteRule ^feed/?([_0-9a-z-]+)?/?$ https://feeds2.feedburner.com/wppourlesnuls [R=302,NC,L]
</IfModule>

Source : Comment rediriger les flux RSS vers Feedburner

2 – Supprimer la mention /category/ de votre url sur WordPress

Par défaut, les permaliens des catégories s’affichent de la façon suivante: https://www.wppourlesnuls.com/blog/category/wordpress. Comme vous pouvez le voir, la mention category dans l’url est relativement inutile. Pour l’enlever, sauvegardez en premier lieu votre fichier .htaccess. Ensuite, ouvrez-le et ajoutez la ligne suivante :

RewriteRule ^category/(.+)$ https://www.yourblog.com/$1 [R=301,L]

Source : Comment supprimer la mention category dans votre url sur WordPress

3 – Utiliser la mémoire cache de votre navigateur

Une bonne façon d’optimiser le temps de chargement de votre blog est de forcer l’utilisation de la cache de votre navigateur. Ce code ne va pas affecter directement le temps de chargement mais il va réduire le travail du serveur web WordPress, en envoyant une requête 304 Not Modified lorsque l’élément demandé n’a pas été modifié.

FileETag MTime Size
<ifmodule mod_expires.c>
  <filesmatch "\.(jpg|gif|png|css|js)$">
       ExpiresActive on
       ExpiresDefault "access plus 1 year"
   </filesmatch>
</ifmodule>

Source: Comment accélérer le temps de chargement de votre blog

4 – Compresser les données statiques

Saviez-vous qu’il est possible d’envoyer des données compressées aux visiteurs, qui seront ensuite décompressées par le client ? Ce code va vraiment alléger le poids de vos pages et vous faire économiser de la bande passante à vous et à vos visiteurs.

AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html

5 – Rediriger le nom des permaliens vers /%postname%/

La première chose à faire est de se connecter à votre panneau d’administrateur, ensuite cliquez sur Réglages à Permaliens et choisissez Structure personnalisée. Remplissez le champ avec /%postname%/. Vos permaliens ressembleront désormais à ceci : https://www. votreblog.com/nom-de-votre-article.

Maintenant, il faut rediriger tous les backlinks qui utilisent l’ancienne structure des permaliens vers la nouvelle structure. Pour ce faire, vous devez modifier le fichier .htaccess qui se trouve dans le dossier racine de votre WordPress. Collez la ligne suivante dans .htaccess :

RedirectMatch 301 /([0-9]+)/([0-9]+)/([0-9]+)/(.*)$ https://www.domain.com/$4

Source : Redirigez la date et le nom des permaliens vers /%postname%/

6 – Refuser la publication de commentaires lorsqu’il n’y a aucune demande de référant

Vous en avez marre des spams que vous recevez au quotidien dans vos commentaires ? Bien sûr, il existe Akismet mais il y a également une astuce avec le fichier .htaccess qui vous permettra d’empêcher les spammeurs de poster sur votre blog. La plupart des spammeurs utilisent des robots qui surgissent de nulle part. Ce code va chercher le site référant (referrer, la page d’où proviennent les commentateurs) et va les empêcher de commenter dans le cas où les commentateurs essaient d’atteindre le fichier wp-comments-post.php, sans venir directement de votre blog. Il suffit de changer la ligne 4 et d’y spécifier l’url de votre blog.

RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*votreblog.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^https://%{REMOTE_ADDR}/$ [R=301,L]

Source : Refuser la publication de commentaires lorsqu’il n’y a aucune demande de référant

7 – Rediriger les visiteurs vers une page de maintenance

Quand vous mettez à jour votre blog ou que vous faites des changements dans le thème, ce n’est pas une bonne idée de laisser les utilisateurs visiter votre site au moment où celui-ci est en maintenance. Parfois, on y observe des problèmes de code ou de design, voire même des failles de sécurité. La solution est de créer une belle page de maintenance et de rediriger temporairement vos visiteurs vers cette page le temps que vous finissiez les travaux. Remplacez maintenance.html (ligne 2) par la page vers laquelle vous voulez rediriger vos visiteurs. Remplacez également l’adresse IP (ligne 3) par votre propre adresse. Notez que la redirection 302 est utilisée afin d’éviter que les moteurs de recherche n’indexent votre page de maintenance à la place de votre vraie page d’accueil.

RewriteEngine on
RewriteCond %{REQUEST_URI} !/maintenance.html$
RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123
RewriteRule $ /maintenance.html [R=302,L]

Source : Comment faire une page d’accueil pour les internautes

8 – Empêcher le « hotlinking » sur son blog WordPress

Le hotlinking (vol de liens directs) est l’utilisation d’une image provenant d’un site externe. De nombreux blogueurs se font voler et subissent donc une utilisation de leur bande passante par d’autres sites. Ce code très utile vous permettra de protéger votre blog contre le hotlinking.

RewriteEngine On
#Replace ?mysite\.com/ with your blog url
RewriteCond %{HTTP_REFERER} !^https://(.+\.)?mysite\.com/ [NC]
RewriteCond %{HTTP_REFERER} !^$
#Replace /images/nohotlink.jpg with your "don't hotlink" image url
RewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/nohotlink.jpg [L]

Source : Comment empêcher le « hotlinking » sur son blog WordPress

9 – N’autoriser que votre adresse IP dans l’interface wp-admin

À moins que votre blog soit collaboratif, vous devriez être le seul à pouvoir accéder au directoire d’administration. Si vous avez une adresse IP statique, ce code fera l’affaire. Tout ce que vous avez à faire est de compléter votre adresse IP à la ligne 8. Notez que vous pouvez ajouter plusieurs adresses IP, en créant une nouvelle ligne: allow from xx.xx.xxx.xx

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "Example Access Control"
AuthType Basic
<LIMIT GET>
order allow, deny
deny from all
allow from xx.xx.xx.xx
</LIMIT>

Source : Protéger son dossier wp-admin sur WordPress

10 – Bannir un spammeur sur WordPress avec .htaccess

Vous le savez, les spams sont très dérangeants. Si vous rencontrez un spammeur spécifique qu’il soit un robot ou une personne, vous pouvez facilement l’éviter en bannissant son adresse IP. Remplacez simplement l’adresse IP à la ligne 3 par l’adresse du spammeur. Vous pouvez ajouter d’autres adresses IP de spammeurs en ajoutant une nouvelle ligne deny from xxx.xx.xxx.xxx

<Limit GET POST> order allow,deny deny from 200.49.176.139 allow from all </Limit>

Source : La méthode la plus simple pour bannir un spammeur sur WordPress
Source de l’article : Cats Who Code
Source de la photographie : adesigna (Flickr)

Auteur
Louis-Philippe Dea

Fondateur de WP Pour les Nuls, de l'agence Guérilla Web et professeur au collège. Je me nourris de WordPress, de web et de yoga!

Articles similaires

Commentaires

  1. dewy a écrit

    super je suis vernis ce matin je cherchais justement des infos pour supprimer le mot « category » de mon url. je vais tester votre solution.
    encore bravo et merci

  2. Michael a écrit

    Bonjour Louis-Philippe,
    Je recherche à effectuer un échange de lien avec un site de thématique identique au miens. Je suis tombé sur ton site par hasard, hormis la thématique ton contenu est de qualité. Serais tu intéressé pour pratiquer cette échange avec moi.
    Tu sera mon seul partenaire, je ne veux absolument pas me retrouver avec des dizaines de BL dans le footer 😉
    Je crée très régulièrement de nouveaux articles, c’est également bien sûr un point essentiel. Je vois que tu t’occupe bien de ton blog, cet échange m’intéresse donc, tu peux me recontacter par mail ou via la page contact du site.
    Dans l’attente de ta réponse, cordialement. Michael

  3. Tamie a écrit

    Uma ótima estratégia para curar a ejaculação
    adiantado é realizar os exercícios de kegel mais ou menos
    300 vezes ao dia, todos e cada um dos dias. http://metzger.de/kultursponsoring/guestbox/guestbox.php?Anfangsposition=0

  4. DTM a écrit

    Bonjour,
    Je suis planté en accès du back office de mon site Internet
    Message: Internal server error
    Quelqu’un peut-il m’aider?
    D’avance, merci

    • Louis-Philippe Dea a écrit

      Bonjour,
      Vous pouvez remodifier par FTP votre fichier htaccess au fichier par défaut. Cela réglera peut-être votre problème.

      
      # BEGIN WordPress
      
      RewriteEngine On
      RewriteBase /
      RewriteRule ^index\.php$ - [L]
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . /index.php [L]
      
      # END WordPress
      
  5. ramzi a écrit

    Bonjour ,
    Comment je peut utiliser le gzip avec htaccess ..

  6. Louis-Philippe Dea a écrit

    Salut Ramzi,
    Je vous conseil cet article qui peut vous être utile : https://technumero.com/gzip-compression-in-wordpress/

Ajouter un commentaire

Étant donné que chaque site WordPress est différent (versions, thèmes, plugins, etc.) et que WP Pour les Nuls est un site gratuit, le module de commentaire n'est pas un service d’assistance technique WordPress gratuit.