Bonjour à tous,
Petite question orientée .htaccess.
Sur un projet de site Multilingue qui passe en production prochainement, il y aura finalement 3 noms de domaine !
(un différent par langue).
Exemple :
FR : monsite.com
EN : mysite.com
DE : meinsite.com
Dans pareil cas, j'ai déjà utilisé dans le passé et avec satisfaction le plugin de Yireo "Langue Domains".
On peut encore le trouver sur Github, mais Yiero ne le maintient plus (même s'il fonctionne encore actuellement) :
Bref, je voudrais prévoir une alternative, càd jouer directement avec le .htaccess pour la réécriture.
Le but est à la fois d'être user-friendly (quand on change la langue, le nom de domaine change) mais aussi d'éviter du coup le duplicate content : en effet, par défaut, une même page /blabla peut avoir trois urls dans chaque langue :
FR : monsite.com/fr/blabla = mysite.com/fr/blabla = meinsite.com/fr/blabla
EN : monsite.com/en/blabla = mysite.com/en/blabla = meinsite.com/en/blabla
DE : monsite.com/nl/blabla = mysite.com/nl/blabla = meinsite.com/nl/blabla
Or le but serait de forcer la réécriture, autrement dit de remplacer les urls en rouge ci-dessous par celles en vert.
(voire même tant qu'on y est d'en profiter pour laisser tomber le /fr/, /en/ et /de/ puisque le nom de domaine indique déjà la langue)
Comment faire ?
Alors pour ne pas partir de rien, j'ai déjà un embryon de solution glanée sur stackoverflow (mais je ne suis pas sûr que ce soit robuste. Quid dans cet exemple si le "se" ou le "dk" se trouve quelque-part ailleurs dans l'url p.ex. ?)
Petite question orientée .htaccess.
Sur un projet de site Multilingue qui passe en production prochainement, il y aura finalement 3 noms de domaine !
(un différent par langue).
Exemple :
FR : monsite.com
EN : mysite.com
DE : meinsite.com
Dans pareil cas, j'ai déjà utilisé dans le passé et avec satisfaction le plugin de Yireo "Langue Domains".
On peut encore le trouver sur Github, mais Yiero ne le maintient plus (même s'il fonctionne encore actuellement) :
Bref, je voudrais prévoir une alternative, càd jouer directement avec le .htaccess pour la réécriture.
Le but est à la fois d'être user-friendly (quand on change la langue, le nom de domaine change) mais aussi d'éviter du coup le duplicate content : en effet, par défaut, une même page /blabla peut avoir trois urls dans chaque langue :
FR : monsite.com/fr/blabla = mysite.com/fr/blabla = meinsite.com/fr/blabla
EN : monsite.com/en/blabla = mysite.com/en/blabla = meinsite.com/en/blabla
DE : monsite.com/nl/blabla = mysite.com/nl/blabla = meinsite.com/nl/blabla
Or le but serait de forcer la réécriture, autrement dit de remplacer les urls en rouge ci-dessous par celles en vert.
(voire même tant qu'on y est d'en profiter pour laisser tomber le /fr/, /en/ et /de/ puisque le nom de domaine indique déjà la langue)
Comment faire ?
Alors pour ne pas partir de rien, j'ai déjà un embryon de solution glanée sur stackoverflow (mais je ne suis pas sûr que ce soit robuste. Quid dans cet exemple si le "se" ou le "dk" se trouve quelque-part ailleurs dans l'url p.ex. ?)
- Question
How can I rewrite my links as:
www.mydomain.pl/se/ to www.mydomain.se
www.mydomain.pl/dk/ to www.mydomain.dk - Réponse
RewriteEngine on
RewriteRule ^se(.*)$ http://www.mydomain.se$1 [R=301,L]
RewriteRule ^dk(.*)$ http://www.mydomain.dk$1 [R=301,L]
Commentaire