Publié le

Redirection Netlify basée sur la langue du navigateur

Avant de sortir le site web sur lequel vous naviguez actuellement, je maintenais les sous-domaines lab.julienverneaut.com et blog.julienverneaut.com pour publier respectivement des expériences front-end et des articles de blog.

J'ai eu la volonté d'unifier ces 2 plateformes en un seul site lors de son redesign afin de permettre à mes visiteurs de découvrir mes autres contenus une fois facilement.

Dans le cas de mon laboratoire lab.julienverneaut.com, le sous-domaine existe toujours mais ne sert plus qu'à héberger des pages indépendantes qui sont ensuite affichées dans le section expériences de ce site embarquées dans des iframes.

Redirection avec le fichier _redirects

Il ne me restait donc plus qu'à rediriger les utilisateurs de l'ancienne page de listing du laboratoire vers mon site actuel avec une règle de redirection côté Netlify définie dans un fichier _redirects.

https://lab.julienverneaut.com https://www.julienverneaut.com/experiences 301!

Tout fonctionnait à merveille jusqu'à ce que je me rende compte dans mes analytics que la plupart des utilisateurs provenant de mon laboratoire bouncaient rapidement une fois arrivés sur ce nouveau site.

Le laboratoire ayant quelques backlinks sur des sites américains, les visiteurs qui étaient redirigés vers mon nouveau site se retrouvaient alors sur un site en français et quittaient rapidement la page.

Redirection basée sur la langue

Pour régler le problème rien de plus simple, Netlify propose des options supplémentaires pour rediriger les utilisateurs en fonction de leur pays ou de leur langue.

J'ai donc ajouté une seconde règle de redirection avec une condition sur la langue fr qui redirige sur la version française de ce site.

https://lab.julienverneaut.com https://www.julienverneaut.com/experiences 301! Language=fr
https://lab.julienverneaut.com https://www.julienverneaut.com/en/experiments 301!

Dorénavant, les utilisateurs sont redirigés vers la version anglaise par défaut, sauf s'ils parlent français dans quel cas ils atterriront sur le site en français.