redirection HTTPS du fichier .htaccess n'est pas pris en compte par WordPress redirection HTTPS du fichier .htaccess n'est pas pris en compte par WordPress

Pourquoi votre redirection .htaccess HTTPS ne fonctionne pas dans WordPress ?

La redirection vers l’HTTPS du fichier .htaccess n’est pas prise en compte par WordPress ?

Vous vous demandez pourquoi vos redirections .htaccess ne sont pas prises en compte sur votre site WordPress ? Vous modifiez votre fichier .htaccess dans tous les sens mais cela n’a absolument aucun effet sur votre site web ?

La réponse pourrait être plus simple que vous ne le pensez. Nous allons voir ensemble les éventuels problèmes dans votre fichier .htaccess et leur solution.

La redirection vers l’HTTPS du fichier .htaccess n’est pas prise en compte par WordPress ?


👉 Votre code de redirection doit être placé avant la section WordPress du fichier .htaccess !

Oui, oui, je ne plaisante pas c’est aussi simple que cela 🙂

Exemple du fichier .htaccess WordPress d’origine

# BEGIN WordPress
# Les directives (lignes) entre « BEGIN WordPress » et « END WordPress » sont générées
# dynamiquement, et doivent être modifiées uniquement via les filtres WordPress.
# Toute modification des directives situées entre ces marqueurs sera surchargée.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Erreur courante : Placer la redirection HTTPS dans le fichier .htaccess après le bloc WordPress

# BEGIN WordPress
# Les directives (lignes) entre « BEGIN WordPress » et « END WordPress » sont générées
# dynamiquement, et doivent être modifiées uniquement via les filtres WordPress.
# Toute modification des directives situées entre ces marqueurs sera surchargée.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

# Redirection vers HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

👉 Solution pour que votre redirection .htaccess fonctionne

# Redirection vers HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# BEGIN WordPress
# Les directives (lignes) entre « BEGIN WordPress » et « END WordPress » sont générées
# dynamiquement, et doivent être modifiées uniquement via les filtres WordPress.
# Toute modification des directives situées entre ces marqueurs sera surchargée.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
solution htaccess wordpress

Il suffisait de placer la redirection https au dessus du bloc WordPress

Lorsque vous placez une redirection dans le fichier .htaccess, l’ordre des règles est important car Apache traite les règles dans l’ordre où elles apparaissent dans le fichier. Voici ce qui se passe :

  1. Lorsque la redirection est placée au-dessus du bloc de base de WordPress, Apache rencontre la règle de redirection en premier. Il applique donc la redirection avant que WordPress ne traite la demande. Cela signifie que même si la demande est destinée à WordPress, elle est d’abord redirigée selon la règle dans le fichier .htaccess.

  2. En revanche, lorsque la redirection est placée en dessous du bloc de base de WordPress, Apache traite d’abord les règles de WordPress, puis la redirection. Cela signifie que WordPress a déjà eu la chance de traiter la demande avant que la redirection ne soit appliquée. Donc, si WordPress gère la demande et renvoie une réponse, la redirection dans le fichier .htaccess n’est jamais activée.

En résumé, l’emplacement de la règle de redirection dans le fichier .htaccess détermine quand elle est appliquée par rapport aux autres règles, y compris celles générées par WordPress.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *