Page About.html bien visible dans les résultats de recherche, mais introuvable

Il y a un lien vers about.html, mais il manque — comme c’est le cas ici sur Meta : About - Discourse Meta

Ai-je oublié un paramètre, etc. ? Merci !

Il n’y a pas d’extension .html dans Discourse.

About - Discourse Meta <— c’est l’URL correcte

Oui, merci, mais Google en a trouvé un d’une manière ou d’une autre. :man_shrugging:

Je ne le vois pas

C’est intéressant :wink: Moi aussi, et je peux le trouver ainsi :


→ about.html

Je l’ai trouvé.

Peut-être installer le plugin sitemap

Merci, mais il est déjà installé.

Le plugin du sitemap n’annonce même pas la page /about.
Tout ce que je peux imaginer, c’est que quelqu’un a lié à /about.html quelque part

et que Discourse renvoie un 200 OK pour cela :scream: :scream: :scream:

Ils renvoient une réponse 200 pour de nombreux noms de documents, bien qu’ils soient invalides :

  • faq.html
  • categories.html
  • u.html
  • tags.html
  • top.html
  • badges.html

Je me demandais si cela concernait uniquement les routes intégrées, mais cela fonctionne pour le plugin cake day :

  • /cakeday/anniversaries/today.html

mais pas pour knowledge-explorer, qui renvoie une erreur 404 sur :

  • /docs.html

mais pas sur :

  • badges.html

:thinking:

N’y avait-il pas un problème similaire avec un fichier js il y a une semaine ou deux ?

Hmm, devrions-nous renvoyer 200 pour ces URL inhabituelles @eviltrout ?

Ce problème est lié au fonctionnement des routes Rails. Par défaut, elles permettent à n’importe quel point de terminaison de spécifier un paramètre :format avec un point optionnel. Ainsi, .html signifie le format HTML et .json le format JSON.

about.html est équivalent à /about (les deux demandent la version HTML). Cependant, la route about.html n’existe pas dans Ember car nous n’utilisons jamais de routes avec l’extension HTML, ce qui provoque un désaccord entre le back-end et le front-end. Le serveur renvoie un code 200, mais côté client, il est ensuite indiqué que la ressource n’est pas trouvée.

Il existe des solutions pour corriger cela. Nous pourrions affiner nos routes Rails pour qu’elles ne prennent plus en charge .html tout en continuant à supporter .json. Je ne vois pas de moyen d’appliquer cela globalement, mais il est possible que j’ignore une solution.

Honnêtement, je ne suis pas très enthousiaste à l’idée de faire ce travail. À moins qu’il y ait une raison très pressante de le corriger, ce que je ne vois pas, je pense que nous pouvons vivre avec.