Skip to content

Htaccess : https, redirections et www resolve

Vous vous retrouverez toujours un jour ou l’autre à devoir rediriger vos pages. Si vous devez le faire avec un hébergement sous Apache, voici quelques cas pratiques qui me servent souvent.

Redirection domaine esclave vers maitre avec query string

# Init rewrite to www and HTTPS and options
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ https://exemple.com%{REQUEST_URI} [L,R=301]
</IfModule>

Forcer www et https

RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]

Forcer les www sans devoir préciser le nom de domaine (utile si on doit changer le ndd un jour)

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

Forcer les www et changer le domaine de redirection

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

Redirection d’une page précise

Redirect permanent /anciennepage http://www.exemple.com/nouvellepage

Rediriger toutes les urls pour un dossier précis

Par ex : toutes les pages du répertoire « truc » -> www.exemple.com/truc/machin.html, www.exemple.com/nouveauDossier/truc/ahah.html, …

RewriteEngine on

RewriteCond %{THE_REQUEST} ^GET\ /truc/
RewriteRule ^truc/(.*) /nouveauDossier/truc/$1 [L,R=301]
Published inBackend

Be First to Comment

Laisser un commentaire

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