Pour un navigateur comme pour un moteur, /about et /about/ sont deux adresses. Si toutes deux répondent 200, vous avez deux copies de chaque page. Le remède : choisir une forme et rediriger l'autre vers elle - et la façon dont cela tourne mal est une boucle.

En choisir une

# nginx: no trailing slash
rewrite ^/(.*)/$ /$1 permanent;

# nginx: with a trailing slash
rewrite ^([^.]*[^/])$ $1/ permanent;

Le second motif exclut volontairement tout ce qui contient un point, pour que les fichiers - /logo.png, /robots.txt - ne soient pas envoyés vers /logo.png/.

La boucle

Deux règles en désaccord - l'une ajoutant la barre, l'autre la retirant - produisent une redirection sans fin. Cela arrive d'ordinaire quand le serveur web a une règle et le framework applicatif la règle inverse. Corrigez-le à UN seul endroit, et cet endroit devrait être l'application si elle a un avis.
curl -sSIL https://example.com/about | grep -E '^HTTP|^location' | head -10

Plus d'une redirection dans cette sortie, ou les deux mêmes adresses en alternance, c'est la boucle. Voyez les boucles de redirection.

Les répertoires font exception

Un vrai répertoire a besoin de la barre finale : sans elle, les liens relatifs dans la page se résolvent un niveau trop haut, si bien que le CSS et les images cassent pendant que le HTML se charge. Ce n'est pas sans raison que les serveurs web redirigent pour l'ajouter.

Dire laquelle est canonique

<link rel="canonical" href="https://example.com/about">
Quelle que soit celle que vous choisissez, faites-y correspondre le plan du site, la balise canonique et les liens internes. Un site qui pointe en interne vers la forme dont il redirige ensuite paie un aller-retour à chaque clic.