robots.txt.html et noindex

Salut,
il y a pas mal de posts sur robots.txt, mais je n’ai pas trouvé « sabot à mon peton » (j’adapte, je suis de la campagne :wink: ).
J’ai une surindexation de page avec du coup plein d’erreurs. Cela concerne les pages générées par les mots-clés, les pages RSS et les paginations.
Du coup, j’ai ajouté dans robots.txt.html (dans squelettes)

Disallow: /±*
Disallow: /spip.php?page=backend*
Disallow: /?page=backend
Disallow: /
&debut

juste avant
Crawl-delay: 1

Mais j’ai vu que pour bloquer une indexation tout court, il fallait mieux un
<meta name="robots" content="noindex">
et ne pas être bloquée par robots.txt (source)

Or dans head.html, il y a une variable
[<meta name="robots" content="(#ENV{robots})" />]

Du coup, je ne sais pas trop si mettre ce que j’ai fait dans robots.txt.html est une bonne approche ou s’il faut faire ça un « noindex » dans head.html.

Mais surtout, si il faut faire ça par head.html je ne sais pas comment déclarer ce noindex en fonction des URL ciblées (mots-clés, les pages RSS et les paginations) en me basant sur le ENV.
Bonne journée !

Ça pourrait mais ça ne le fera pas pour le backend qui n’appelle pas ce squelette cf backend.html · master · spip / dist · GitLab

Merci pour ta réponse.
Si je comprend bien pour le RSS, il faut garder le backend visible pour avoir des RSS pris en compte, mais demander à ne pas les indexer, c’est bien cela ?

Dans cette optique, un ajout en .htaccess de ce qui suit serait adapté pour le backend ?

<Location "/*?page=backend*">
Header set X-Robots-Tag "noindex"
</Location>

Merci !

Disallow: /±* c’(est quoi ce /+-* ?

Pour les autres, ça semble foireux d’exiger / en premier caractère et globalement il faudrait moins spécifier de manière à choper toutes les variations. Donc plutôt genre

Disallow: page=backend
Disallow: &debut_

Et Crawl-delay: 1 n’est pas pris en compte mais en tant que grigri ça ne fait pas de mal. Moi aussi j’y ai recours.

Salut JLuc,
± c’est les mots-clés de type :
www.site.fr/+-mots_cles-+

Je ne savais pas que
Disallow: page=backend
enlevait l’indexation à toutes les occurrences à page=backend quelque soit l’emplacement dans l’URL.
Merci !

Hmmm tu as trouvé ça qqpart ? Ne faut il pas échapper le + ? ça donnerait /\+\-

Salut,
je suis pas sûr de bien comprendre :wink: Je vais répondre pour les deux options que je vois :wink:
Option 1
www.site.fr/+-mots_cles-+ je le trouve sur mes sites (Avec une confioguration backoffice de « Type d’adresses URL » en « URLs Propres »)
Option 2
Pour l’écriture du code utilisé, je n’ai pas de connaissance informatique approfondie et j’ai extrapolé sur les exemples que j’ai trouvé ou sur le contenu préexistant de robots.txt.html dans squelettes-dist .
J’ai déjà vu des échappement sur des espaces, guillemets dans des htacess ou du bash… mais je ne pensais pas dans robots.txt.html surtout qu’il y a dans le fichier par défaut la présence de ? sans \ avant.

Par ailleurs pour le backend (b_b indiquant qu’il n’est pas concerné par le dossier squelette), je ne sais pas si un ajout en .htaccess serait plus pertinent avec « Location » ou « Directory » (peut être le résultat serait le même…) ?

<Location "/*?page=backend*">
Header set X-Robots-Tag "noindex"
</Location>

ou

<Directory "/*?page=backend*">
Header set X-Robots-Tag "noindex"
</Directory>

Bonjour,
je poste mes avancées, au cas où cela puisse servir à une personne qui aurait les mêmes interrogation (et ne serait pas très douée comme moi). Je ne met pas encore en résolu, car j’avance encore sur le route…

  1. Tout d’abord, je ne comprenais pas pourquoi rien n’était pris en compte. Mea culpa, j’avais un plugin SEO avec « index, follow » a désactiver pour les robots.
  2. Pour ne plus avoir les mots-clés indexés (ce qui créé beaucoup trop de pages à indexer sur certains de mes sites) :
    J’ai remplacé dans mot.html et groupe.html (dans squelettes) <INCLURE{fond=inclure/head} />
    par
    <INCLURE{fond=inclure/head,robots=noindex} />
    Du coup, pas d’utilité pour Disallow: /-+* dans robots.txt.html (dans squelettes)
    Ça à l’air d’être pris en compte.
  3. Pour les liens de pagination de type www.site.org/*?debut* le nofollow dans le lien n’est pas pris en compte par google pour les liens interne qui indique d’utiliser disallow (source), j’ai donc mis Disallow: /*?debut* dans robots.txt.html (dans squelettes).
    Je repasserai pour dire si ça porte ces fruits.
  4. Pour les liens RSS de type www.site.org/*?page=backend* je suis parti sur une option inspirée de Wordpress (source) qui redirige tous les RSS vers un seul. Dans le footer, j’ai mis un lien vers le RSS du sitemap de type <a href="#URL_SITE_SPIP/?lang=#LANG&page=plan&page=backend" rel="alternate" title="<:syndiquer_site:>" class="last"><div class="bigbutton">RSS&nbsp;2.0</div></a>
    au lieu de liens propre à chaque page / rubrique <a href="#URL_PAGE{backend}" ...></a>
    Voilou. Je repasse bientôt si tout est bien résolu.