Aller au contenu

Est-il possible de mettre des liens absolu dans robots.txt ?


Sujets conseillés

Posté (modifié)

Bonjour tout le monde.

J'ai une page qui est à la racine de 2 sous domaines différent et qui contiens la même chose, pour éviter le duplicate je voudrais interdire l'indexation de cette page pour l'un des 2 sous domaines. Les 2 sous domaine partage le même robots.txt alors je me demandais est-ce que l'on peut mettre un lien absolu dans un robots.txt ?

User-agent: *
Disallow: http://en.mondomaine.net/page.php

Merci :P

Modifié par Spark
Posté

Salut, pourquoi ne mettrais-tu pas simplement un fichier robots.txt dans le dossier de ton sous domaine avec dedans:

User-agent: *

Disallow: /

Yoyo

Posté (modifié)

Salut,

Ca serait suicidaire = 0 référencement. Je ne vais pas condamner le site pour une page. Autant mettre :

Disallow: page.php

Mais je veux que la page soit référencé au moins sur un des 2 sous domaines.

Et sinon quelqu'un sais si on peut ?

Modifié par Spark
Posté

Bonjour,

Les 2 sous domaine partage le même robots.txt
Tu veux dire que [i]http://sousdomaine1.domaine.com/robots.txt et [i]http://sousdomaine2.domaine.com/robots.txt affichent le même fichier robots.txt ?

alors je me demandais est-ce que l'on peut mettre un lien absolu dans un robots.txt ?
On ne peut pas mettre de lien sous la forme [i]http://sousdomaine.domaine.com/lien.html* dans robots.txt, mais il y a sûrement une autre solution à ton problème.

Jean-Luc

P.S. * la seule exception étant la nouvelle directive Sitemap: comme rappelé par Régis

Posté
En tout cas, pour la commande Sitemap du fichier robots.txt, il est préconisé un chemin absolu. Voir ce post de Webmaster Hub - Une directive Sitemap pour robots.txt

Je ne connaissais pas Sitemap, est-ce qu'il est utilisé par tous les moteurs de recherche ? Est-ce que ça peut résoudre mon problème ?

Tu veux dire que [i]http://sousdomaine1.domaine.com/robots.txt et [i]http://sousdomaine2.domaine.com/robots.txt affichent le même fichier robots.txt ?

On ne peut pas mettre de lien sous la forme [i]http://sousdomaine.domaine.com/lien.html* dans robots.txt, mais il y a sûrement une autre solution à ton problème.

Exactement oui, le contenu change grace à $_SERVER['HTTP_HOST'], c'est pour changer la langue du site. Mais une des pages à le même contenu, c'est un fichier xml d'ailleurs ! Je l'avais presque oublié !! Comment se référence ce genre de fichier, avec l'xls ça parait être une page comme une autre, mais le code source est bien en xml ... .

Est-il possible de conditionner les indications du fichier robots.txt en fonction de $_SERVER['HTTP_HOST'] ? Comme je l'ai fais dans les fichier PHP ?

Posté

Le sitemap ne permet pas d'interdire l'indexation de certaines pages.

Par contre, tu peux parfaitement conditionner le contenu de robots.txt par du PHP en fonction de $_SERVER['HTTP_HOST'] (ne pas oublier que "type MIME" doit être "text/plain").

Jean-Luc

Posté

Une simple règle de réécriture conditionnelle permet de présenter un fichier robots.txt différent selon le domaine.

Un permettant l'indexation, l'autre non....

Posté
tu as aussi le protocole d'exclusion par les meta
Cette technique n'est pas utilisable avec un fichier texte comme robots.txt. ;)

Jean-Luc

Posté

Bien sûr que non, puisque il s'agit d'une alternative au protocole robots.txt mais cette balise meta peut intégrer le page.php ;)

Posté
Par contre, tu peux parfaitement conditionner le contenu de robots.txt par du PHP en fonction de $_SERVER['HTTP_HOST'] (ne pas oublier que "type MIME" doit être "text/plain").
Une simple règle de réécriture conditionnelle permet de présenter un fichier robots.txt différent selon le domaine.

Un permettant l'indexation, l'autre non....

Vous voulez dire faire une page en php et faire de l'URL rewriting ?

ne pas oublier que "type MIME" doit être "text/plain"

Que veut-tu dire ? Spécifier le type de fichier dans l'entête ?

header('Content-type: text/plain');

Ton page.php est un fichier différent pour chaque sous-domaine ?

Et non, sinon ça ne serait pas un problème ...

Merci pour vos conseil ! C'est parti ! :)

Posté

Tu fais deux fichiers:

- un robots.txt qui permet l'indexation

- un robots.noindex.txt qui ne la permet pas.

Ensuite, tu mets une condition dans le fichier .htaccess de la racine commune aux deux domaines

RewriteCond %{HTTP_HOST} !www.domaine-a-indexer.tld
RewriteRule robots.txt robots.noindex.txt [L]

Si le domaine n'est pas celui que tu veux faire indexer, tu rediriges robots.txt et founis le contenu de robots.noindex.txt

Sinon, tu fournis le robots.txt standard.

Dan

Posté

Oh c'est encore plus simple comme ça. Je ne connaissais pas pas. Ca fonction parfaitement.

Merci !

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...