Citation:
URL canoniques : une seule URL pour une même ressource / fichier
Sur de nombreux sites (surtout lorsque vous commencer à utiliser la réécriture d'URL), il existe plusieurs URL pour une même ressource. Une que l'on appelle canonique et qui est utilisée et distribuée et d'autres qui sont juste des raccourcis, des liens internes etc.
Indépendamment de la requête effectuée, on cherche à afficher l'URL canonique (l'URL que l'on souhaite diffuser)
Pour cela, nous allons effectuer une redirection externe HTTP pour toutes les URLs qui ne sont pas canoniques grâce au drapeau de redirection [R]. Le visiteur ne verra donc que l'URL canonique quelle que soit l'adresse entrée.
RewriteEngine On
RewriteRule ^/~([^/]+)/?(.*) /u/$1/$2 [R]
RewriteRule ^/u/([^/]+)$ /$1/$2/ [R]
Dans cet exemple ci-dessus, nous effectuons une redirection HTTP pour toutes les URL non-canoniques afin de les afficher correctement dans le navigateur.
Les règles ci-dessus remplacent « /~user » par l'URL canonique « /u/user » et corrige le problème du slash manquant pour « /u/user ».
Merci de vos réponses