Rapport SEO : analyse des slugs URL de la documentation

Généré depuis scripts/analyze-slug-seo.ts — source : scripts/slug-mapping.json (1 667 pages)

Locale de référence : fr — URL type : /fr/guides/{category}/{subcategory}/{slug}


1. Résumé exécutif

MétriqueValeur
Pages analysées1 667
MDX existants (fr)1 620 (97.2%)
MDX manquants (fr)47 (2.8%)
Score SEO moyen8.98 / 10
finalSlug améliorés475 (28.5%)
finalSlug inchangés1 192 (71.5%)
Collisions finalSlug0

La majorité des slugs (65%) sont déjà excellents. Le finalSlug proposé améliore 475 entrées, principalement en supprimant la redondance avec le chemin URL et en désambiguïsant les slugs génériques. Aucune collision ne subsiste après traitement.


2. Méthodologie de scoring

Chaque entrée est notée sur 10 points, répartis en 5 critères de 2 points chacun. L'évaluation se fait sur l'URL localisée complète (ex: /fr/guides/public-cloud/compute/pre-installed-applications).

2.1 Longueur du slug (0-2 pts)

La longueur optimale d'un slug SEO est de 3-6 mots (15-50 caractères).

ConditionScoreFlag
> 60 caractères0slug-too-long
> 50 caractères0.5slug-long
> 40 caractères1
≤ 3 caractères0.5slug-too-short
1 seul mot1slug-single-word
15-40 caractères, 3-6 mots2

2.2 Descriptivité (0-2 pts)

Le slug doit contenir des mots-clés significatifs permettant à l'utilisateur et aux moteurs de recherche de comprendre le contenu de la page.

ConditionScoreFlag
Aucun mot significatif (> 2 chars, hors stop words)0no-meaningful-keywords
1 seul mot significatif court (< 5 chars)1low-descriptiveness
1 mot significatif long (≥ 5 chars)1.5
Slug générique (faq, getting-started, troubleshooting...)max 1generic-slug
2+ mots significatifs2

Liste des slugs génériques détectés : getting-started, faq, troubleshooting, billing, capabilities, concepts, overview, configuration, installation, maintenance, backups, advanced-configuration, responsibility-model, responsibility-sharing, lifecycle-policy.

2.3 Redondance avec le chemin URL (0-2 pts)

Les mots du slug qui apparaissent déjà dans les segments du chemin URL (/guides/public-cloud/compute/) sont redondants — ils n'apportent aucune information supplémentaire et rallongent inutilement l'URL.

Ratio de mots redondantsScoreFlag
> 75%0highly-redundant
> 50%0.5redundant
> 25%1
≤ 25%2

Exemple : /fr/guides/public-cloud/containers-orchestration/managed-kubernetes/public-cloud-kubernetes-expose-applications-using-load-balancer → Les mots public, cloud, kubernetes sont déjà dans le chemin → 3/8 mots redondants (37.5%).

2.4 Unicité (0-2 pts)

Un slug identique utilisé pour plusieurs pages crée une ambiguïté pour le maillage interne et les backlinks.

Fréquence du slugScoreFlag
> 3 occurrences0collision-Nx
2-3 occurrences0.5collision-Nx
Unique2

2.5 Lisibilité de l'URL complète (0-2 pts)

Évalue la qualité globale de l'URL finale (/fr/guides/.../slug).

ConditionPénalitéFlag
Préfixe numérique (00-, 01-...)-0.5numeric-prefix
Tokens cryptiques (≤ 2 chars hors stop words, pattern [a-z]{1,3}\d)-0.5
URL totale > 100 caractères-0.5url-too-long
URL totale > 120 caractères-0.5 supplémentaireurl-very-long

3. Distribution des scores

Score       Nombre   %       Barre
──────────────────────────────────────────
9-10  ████████████████████████████████  1 082  64.9%   Excellent
7-8   ████████████████                    496  29.7%   Bon
5-6   ███                                  89   5.3%   Acceptable
3-4                                         0   0.0%   Faible
0-2                                         0   0.0%   Critique
ScoreNombre%Qualification
9-101 08264.9%Excellent — aucune modification nécessaire
7-849629.7%Bon — améliorations mineures possibles
5-6895.3%Acceptable — améliorations recommandées
3-400%
0-200%

4. Problèmes détectés (flags)

FlagNombreDescription
url-too-long292URL finale > 100 caractères
redundant116> 50% des mots du slug déjà dans le chemin URL
slug-long92Slug entre 50-60 caractères
url-very-long62URL finale > 120 caractères
slug-single-word47Slug en un seul mot (peu descriptif hors contexte)
collision-2x46Slug identique pour 2 pages différentes
generic-slug34Slug générique (faq, getting-started, troubleshooting...)
slug-too-long24Slug > 60 caractères
low-descriptiveness14Un seul mot-clé court
collision-6x12Slug identique pour 6 pages
highly-redundant10> 75% des mots redondants avec le chemin
collision-3x9Slug identique pour 3 pages
slug-too-short7Slug ≤ 3 caractères
numeric-prefix5Slug commençant par 00-, 01-...
no-meaningful-keywords1Aucun mot significatif (ui)

Répartition par zone produit

Les flags url-too-long et redundant se concentrent fortement sur Public Cloud > Containers & Orchestration (Kubernetes, Rancher, Registry) où les fullSlug Pelican incluaient le chemin complet (public-cloud-kubernetes-..., public-cloud-managed-rancher-service-...) et la migration a ajouté une profondeur d'arborescence supplémentaire.


5. Logique du finalSlug

Le finalSlug est une proposition d'amélioration automatique du newSlug, calculée en 3 passes :

Passe 1 — Nettoyage (par entrée)

Appliquée uniquement si le score SEO est < 9 :

  1. Strip de la redondance — Si le slug est flaggé redundant/highly-redundant ou n'a pas été strippé lors du mapping initial (newSlug === fullSlug), les mots du début du slug qui apparaissent dans les segments URL sont retirés séquentiellement.

    Chemin URL : /guides/public-cloud/containers-orchestration/managed-kubernetes/
    Mots du chemin : {public, cloud, containers, orchestration, managed, kubernetes}
    
    Slug : public-cloud-kubernetes-expose-applications-using-load-balancer
           ^^^^^^ ^^^^^ ^^^^^^^^^^  ← dans le chemin → strippés
    Résultat : expose-applications-using-load-balancer

    Garde-fou : au minimum 2 mots sont toujours conservés, et le résultat doit faire ≥ 3 caractères.

  2. Strip du préfixe numérique00-global-reversibilityglobal-reversibility

  3. Expansion des slugs trop courts — Si le slug fait ≤ 3 caractères ou est un mot unique < 6 caractères, il est préfixé par le nom du répertoire parent.

    ui    → secret-manager-ui
    use   → ssl-gateway-use
    svn   → web-hosting-svn

Passe 2 — Désambiguation simple

Si plusieurs entrées ont le même finalSlug après la passe 1, chacune est préfixée par son répertoire parent immédiat :

troubleshooting (dans backup-agent/)     → backup-agent-troubleshooting
troubleshooting (dans iam/)              → iam-troubleshooting
troubleshooting (dans quantum-computing/) → quantum-computing-troubleshooting

Passe 3 — Désambiguation profonde

Si une collision persiste après la passe 2 (deux pages dans le même répertoire), le fullSlug original est utilisé tel quel. Le fullSlug Pelican est garanti unique.

getting-started (web-hosting/, fullSlug: web-hosting-getting-started)       → web-hosting-getting-started
getting-started (web-hosting/, fullSlug: cloud-web-hosting-getting-started) → cloud-web-hosting-getting-started

6. Résultats finalSlug

MétriqueValeur
Entrées améliorées475 (28.5%)
Entrées inchangées1 192 (71.5%)
Collisions résiduelles0

Ventilation des améliorations

Type d'améliorationNombreDescription
Redondance strippée118Suppression des mots déjà dans le chemin URL
Slug trop long réduit88Stripping agressif des préfixes redondants
Slug générique désambiguïsé32Préfixe par le répertoire parent
Slug trop court étendu7Préfixe par le répertoire parent

Note : certaines entrées cumulent plusieurs types d'amélioration. Le total des catégories peut dépasser 475.


7. Exemples d'améliorations par catégorie

7.1 Redondance strippée

Le slug répétait des mots déjà présents dans le chemin URL. Le finalSlug ne conserve que l'information discriminante.

newSlug (avant)finalSlug (après)URL avantURL après
web-cloud-db-detach-from-web-hostingdb-detach-from-web-hosting/fr/guides/web-cloud/web-cloud-databases/web-cloud-db-detach-from-web-hosting/fr/guides/web-cloud/web-cloud-databases/db-detach-from-web-hosting
cloud-web-hosting-install-ghostinstall-ghost/fr/guides/web-cloud/web-hosting/cloud-web-hosting-install-ghost/fr/guides/web-cloud/web-hosting/install-ghost
public-cloud-network-l3-services-snat-configurationl3-services-snat-configuration/fr/guides/public-cloud/public-cloud-network-services/public-cloud-network-l3-services-snat-configuration/fr/guides/public-cloud/public-cloud-network-services/l3-services-snat-configuration

7.2 Slugs trop longs réduits

Les slugs non strippés lors du mapping initial (le fullSlug Pelican ne matchait pas le pattern {category}-{subcategory}-) sont réduits par le stripping agressif basé sur les mots du chemin.

newSlug (avant)finalSlug (après)Gain
public-cloud-managed-rancher-service-create-kubernetes-compute-instances (72 chars)create-kubernetes-compute-instances (35 chars)-37 chars
public-cloud-kubernetes-configure-multi-attach-persistent-volumes-nas-ha (73 chars)configure-multi-attach-persistent-volumes-nas-ha (49 chars)-24 chars
public-cloud-ai-notebooks-marine-mammal-sounds-classification (62 chars)ai-notebooks-marine-mammal-sounds-classification (49 chars)-13 chars
vmware-zerto-virtual-replication-vmware-vsphere-drp (52 chars)zerto-virtual-replication-vmware-vsphere-drp (45 chars)-7 chars

7.3 Slugs génériques désambiguïsés

Les slugs trop génériques sont préfixés par leur répertoire parent pour devenir descriptifs dans le contexte de l'URL et uniques à l'échelle du site.

newSlugfinalSlugURL finale
getting-startedcli-getting-started/fr/guides/manage-and-operate/cli/cli-getting-started
getting-startedcompute-getting-started/fr/guides/public-cloud/compute/compute-getting-started
getting-startedanalytics-getting-started/fr/guides/public-cloud/data-analytics/analytics/analytics-getting-started
troubleshootingiam-troubleshooting/fr/guides/manage-and-operate/iam/iam-troubleshooting
troubleshootingquantum-computing-troubleshooting/fr/guides/public-cloud/quantum-computing/quantum-computing-troubleshooting
faqweb-hosting-faq/fr/guides/web-cloud/web-hosting/web-hosting-faq
faqovhcloud-connect-faq/fr/guides/network/ovhcloud-connect/ovhcloud-connect-faq
billingbackup-agent-billing/fr/guides/storage-and-backup/backup-agent/backup-agent-billing
capabilitiesquantum-computing-capabilities/fr/guides/public-cloud/quantum-computing/quantum-computing-capabilities

7.4 Slugs trop courts étendus

Les slugs de 1 à 3 caractères ou mono-mot très court n'ont aucune valeur SEO isolée. Le contexte parent les rend compréhensibles.

newSlugfinalSlugURL finale
uisecret-manager-ui/fr/guides/manage-and-operate/secret-manager/secret-manager-ui
usessl-gateway-use/fr/guides/web-cloud/ssl-gateway/ssl-gateway-use
svnweb-hosting-svn/fr/guides/web-cloud/web-hosting/web-hosting-svn
apiovhcloud-connect-api/fr/guides/network/ovhcloud-connect/ovhcloud-connect-api

8. Collisions newSlug et résolution

28 slugs newSlug sont partagés par 2 à 6 pages. Le finalSlug résout toutes les collisions.

Collisions les plus fréquentes

getting-started (6 pages)

Page (mdxPath)finalSlug
guides/web-cloud/web-hosting/hosting-first-steps-with-web-hosting.mdxweb-hosting-getting-started
guides/manage-and-operate/cli/cli-getting-started.mdxcli-getting-started
guides/hosted-private-cloud/opcp/opcp-getting-started.mdxopcp-getting-started
guides/public-cloud/public-cloud-databases/databases-01-order-control-panel.mdxpublic-cloud-databases-getting-started
guides/public-cloud/compute/public-cloud-first-steps.mdxcompute-getting-started
guides/public-cloud/data-analytics/analytics/analytics-getting-started.mdxanalytics-getting-started

troubleshooting (6 pages)

Page (mdxPath)finalSlug
guides/storage-and-backup/backup-agent/backup-agent-troubleshooting.mdxbackup-agent-troubleshooting
guides/manage-and-operate/iam/iam-troubleshooting.mdxiam-troubleshooting
guides/public-cloud/quantum-computing/troubleshooting.mdxquantum-computing-troubleshooting
guides/public-cloud/public-cloud-databases/databases-04-troubleshooting.mdxpublic-cloud-databases-troubleshooting
guides/network/ovhcloud-connect/occ-setup-diagnostics.mdxovhcloud-connect-troubleshooting
guides/public-cloud/data-analytics/analytics/analytics-troubleshooting.mdxanalytics-troubleshooting

faq (3 pages)

Page (mdxPath)finalSlug
guides/web-cloud/web-hosting/faq-web-hosting.mdxweb-hosting-faq
guides/public-cloud/public-cloud-databases/information-04-faq.mdxpublic-cloud-databases-faq
guides/network/ovhcloud-connect/occdedicated-faq.mdxovhcloud-connect-faq

Autres collisions (2-3 pages chacune)

newSlugOccurrencesfinalSlugs
capabilities3quantum-computing-capabilities, public-cloud-databases-capabilities, analytics-capabilities
logs-to-customers3public-cloud-databases-logs-to-customers, ovhcloud-connect-logs-to-customers, analytics-logs-to-customers
responsibility-sharing2web-hosting-responsibility-sharing, domains-responsibility-sharing
billing2backup-agent-billing, quantum-computing-billing
creating-ssh-keys2Résolus par parent (dedicated-servers-, compute-)
replacing-lost-ssh-key-pair2Résolus par parent (dedicated-servers-, compute-)
responsibility-model2Résolus par parent
lifecycle-policy2Résolus par parent
vmware-storage-vmotion2storage-vmotion (HPC), vmware-storage-vmotion (managed-bare-metal)
vmware-fault-tolerance-continuity2fault-tolerance-continuity (HPC), vmware-fault-tolerance-continuity (managed-bare-metal)
vmware-drs-distributed-ressource-scheduler2drs-distributed-ressource-scheduler (HPC), vmware-drs-distributed-ressource-scheduler (managed-bare-metal)

9. 50 pires entrées

Les entrées avec le score SEO le plus bas, triées par score croissant. Quand un finalSlug est proposé, il est affiché.

Score 5.5 (7 entrées)

Toutes dans public-cloud/containers-orchestration/ — slugs non strippés très longs et redondants.

newSlugfinalSlugFlags
public-cloud-managed-rancher-service-create-kubernetes-compute-instancescreate-kubernetes-compute-instancesslug-too-long, redundant, url-too-long, url-very-long
public-cloud-managed-rancher-service-create-kubernetes-custom-nodescreate-kubernetes-custom-nodesslug-too-long, redundant, url-too-long, url-very-long
public-cloud-managed-rancher-service-backup-restore-etcd-s3backup-restore-etcd-s3slug-long, redundant, url-too-long, url-very-long
public-cloud-private-registry-deploy-chart-from-kubernetes-registrydeploy-chart-from-kubernetes-registryslug-too-long, redundant, url-too-long, url-very-long
public-cloud-kubernetes-migrate-iolb-to-public-cloud-loadbalancermigrate-iolb-to-public-cloud-loadbalancerslug-too-long, redundant, url-too-long, url-very-long
public-cloud-kubernetes-getting-source-ip-behind-loadbalancergetting-source-ip-behind-loadbalancerslug-too-long, url-too-long, url-very-long
public-cloud-kubernetes-configure-multi-attach-persistent-volumes-nas-haconfigure-multi-attach-persistent-volumes-nas-haslug-too-long, url-too-long, url-very-long

Score 6.0 (42 entrées)

Mélange de slugs génériques, trop courts, et longs non strippés.

Slugs génériques/trop courts :

newSlugfinalSlugURL après
faqweb-hosting-faq/fr/guides/web-cloud/web-hosting/web-hosting-faq
faqpublic-cloud-databases-faq/fr/guides/public-cloud/public-cloud-databases/public-cloud-databases-faq
faqovhcloud-connect-faq/fr/guides/network/ovhcloud-connect/ovhcloud-connect-faq
uisecret-manager-ui/fr/guides/manage-and-operate/secret-manager/secret-manager-ui
troubleshooting (×6){parent}-troubleshootingVoir section 8

Slugs longs (containers-orchestration) :

newSlugfinalSlug
public-cloud-managed-rancher-service-using-rancher-cliusing-rancher-cli
public-cloud-managed-rancher-service-managing-users-projectsmanaged-rancher-service-managing-users-projects
public-cloud-managed-rancher-service-getting-startedmanaged-rancher-service-getting-started
public-cloud-managed-rancher-service-deploy-monitoring-prometheus-grafana-metricsdeploy-monitoring-prometheus-grafana-metrics
public-cloud-private-registry-scan-docker-images-vulnerabilitiesscan-docker-images-vulnerabilities
public-cloud-private-registry-configure-oidc-provider-authenticationconfigure-oidc-provider-authentication
public-cloud-kubernetes-vrack-example-between-private-networksvrack-example-between-private-networks
public-cloud-kubernetes-plugins-software-versions-reserved-resourcesplugins-software-versions-reserved-resources
public-cloud-kubernetes-monitoring-instances-prometheus-grafanamonitoring-instances-prometheus-grafana
public-cloud-kubernetes-expose-applications-using-load-balancerexpose-applications-using-load-balancer
public-cloud-kubernetes-configure-multi-attach-persistent-volumes-enterprise-file-storageconfigure-multi-attach-persistent-volumes-enterprise-file-storage
public-cloud-kubernetes-configure-multi-attach-persistent-volumes-cloud-disk-arrayconfigure-multi-attach-persistent-volumes-cloud-disk-array

Non résolus automatiquement (score 6.0, pas d'amélioration) :

newSlugURLFlags
public-cloud-storage-object-storage-migrate-from-s3-to-ovhcloud/fr/guides/storage-and-backup/object-storage/...slug-too-long, url-too-long
public-cloud-storage-pcs-optimised-method-for-uploading-files-to-object-storage/fr/guides/storage-and-backup/object-storage/...slug-too-long, url-too-long, url-very-long

Score 6.5 (1 entrée notable)

newSlugfinalSlugFlags
billingbackup-agent-billingslug-single-word, generic-slug, collision-2x

10. Cas non résolus automatiquement

Certaines entrées conservent un score acceptable (6.0) mais n'ont pas été améliorées car le stripping automatique ne peut pas inventer de meilleur slug — le fullSlug Pelican lui-même est trop long ou non descriptif.

10.1 Slugs longs dans storage-and-backup/object-storage/

Le score est 6.0 avec le fullSlug original, mais les mots du path (storage, backup, object) ne matchent pas le début du slug (public-cloud-storage-...). Le mot cloud n'est pas dans le path storage-and-backup, et public est trop court (filtré à ≤ 2 chars dans la logique de stripping). Ces cas nécessiteraient un mapping manuel.

fullSlugURL actuelle
public-cloud-storage-object-storage-migrate-from-s3-to-ovhcloud/fr/guides/storage-and-backup/object-storage/public-cloud-storage-object-storage-migrate-from-s3-to-ovhcloud
public-cloud-storage-pcs-optimised-method-for-uploading-files-to-object-storage/fr/guides/storage-and-backup/object-storage/public-cloud-storage-pcs-optimised-method-for-uploading-files-to-object-storage
public-cloud-storage-object-storage-migrate-from-swift-to-s3/fr/guides/storage-and-backup/object-storage/public-cloud-storage-object-storage-migrate-from-swift-to-s3

Slug idéal (manuel) : migrate-from-s3-to-ovhcloud, optimised-upload-method, migrate-from-swift-to-s3

10.2 Slugs encore longs après stripping

Certains finalSlug restent longs car le contenu est intrinsèquement détaillé. Le stripping a supprimé la redondance mais le slug reste > 40 chars.

Exemples :

  • configure-multi-attach-persistent-volumes-enterprise-file-storage (65 chars)
  • configure-multi-attach-persistent-volumes-cloud-disk-array (58 chars)
  • deploy-monitoring-prometheus-grafana-metrics (45 chars)

Ces cas sont acceptables — le slug est descriptif et non redondant. Un raccourcissement supplémentaire perdrait de l'information.


11. Recommandations

Action immédiate — Appliquer les finalSlug

Les 475 finalSlug améliorés sont prêts à être utilisés pour le renommage MDX (étape 2 du plan). Zéro collision, améliorations déterministes et réversibles.

Mapping manuel — 3-5 entrées

Les ~3 entrées storage-and-backup/object-storage/ scorant 6.0 sans amélioration automatique bénéficieraient d'un slug raccourci manuellement (voir section 10.1).

Priorité de renommage par impact SEO

PrioritéCritèreNombreJustification
P0Score ≤ 6.089URLs actuellement pénalisantes (trop longues, génériques, ou redondantes)
P1Score 6.5-8.0 avec improved=true~386Gain SEO mesurable sur la redondance et la longueur
P2Score ≥ 91 192Aucune modification nécessaire

Redirections 301

Chaque renommage MDX nécessitera une redirection 301 de l'ancien slug vers le nouveau pour préserver le jus SEO existant et éviter les 404 sur les backlinks.


Fichiers générés

FichierDescription
scripts/slug-mapping.jsonTable de correspondance fullSlug → newSlug (1 667 entrées)
scripts/slug-seo-report.jsonRapport SEO complet avec scores, flags, finalSlug par entrée
scripts/slug-seo-report.mdCe document
scripts/generate-slug-mapping.tsScript de génération du mapping
scripts/analyze-slug-seo.tsScript d'analyse SEO et calcul du finalSlug
Cette page vous a-t-elle aidé ?