Je souhaite masquer mon fichier XML de plan du site, mais autoriser l'accès aux moteurs de recherche.
Quelle est la façon de procéder?
Je veux cacher la profondeur du contenu du site aux concurrents.
Je souhaite masquer mon fichier XML de plan du site, mais autoriser l'accès aux moteurs de recherche.
Quelle est la façon de procéder?
Je veux cacher la profondeur du contenu du site aux concurrents.
Réponses:
La première étape serait de détecter l'agent utilisateur des bots que vous souhaitez autoriser et de servir un fichier différent s'il ne s'agit pas d'un agent utilisateur que vous souhaitez autoriser.
Par exemple, vous pouvez avoir deux versions de robots.txt
, une avec et une sans référence au plan du site, afin que vos concurrents ne trouvent pas le plan du site s'ils regardent à l'intérieur de votre site robots.txt
.
Ensuite, vous pouvez détecter les visites de l'URL de votre plan de site et diffuser le plan du site uniquement lorsque l'AU est correct. Si vous diffusez une page 404 générique dans le cas contraire, vos concurrents peuvent même ne pas savoir que votre plan du site existe.
Cependant, toutes les mesures décrites jusqu'à présent ne sont que la sécurité par l'obscurité. Un User-Agent peut facilement être usurpé.
Par conséquent, Google recommande que, pour détecter le vrai GoogleBot, vous:
googlebot.com.
.Résumer:
Microsoft conseille d'utiliser la même procédure pour détecter leur robot.
Cette astuce fonctionne pour Yahoo! ainsi que.
Pour DuckDuckGo, vous pouvez utiliser cette liste d'adresses IP
Vous n'avez pas besoin d'utiliser une erreur 404 si vous utilisez la détection d'araignée basée sur la recherche DNS.
Le but de l'utilisation de la page d'erreur 404 est de cacher que votre sitemap existe. Cependant, si vous utilisez la technique plus avancée qui ne repose pas uniquement sur les en- User-Agent
têtes, il ne devrait pas être possible de la contourner afin que vous puissiez utiliser en toute sécurité un code d'erreur différent, tel que 403 Forbidden
le code d'erreur correct à utiliser ici.
Le problème est que si vous voulez (à juste titre) que votre contenu soit indexé par les moteurs de recherche, toute personne qui effectue un site: la recherche dans l'un des moteurs de recherche pourra voir quelles URL sont indexées.
Si vous souhaitez "masquer" votre plan de site, vous pouvez l'avoir sur une URL avec un nom "secret", il n'est donc pas évident pour quiconque le recherche, mais vu qu'il est préférable d'inclure un plan de site dans un fichier robots.txt fichier et téléchargez-le dans l'un des profils des outils pour les webmasters des moteurs de recherche, comme d'autres l'ont dit, il est difficile de comprendre pourquoi vous devez le faire.
La solution astucieuse consiste à générer deux plans de site. Le premier est au profit de vos concurrents, le second est au profit de vos moteurs de recherche préférés. Dans le langage militaire, ce premier plan du site est une feinte.
La «feinte» contient la structure de base de votre site Web, la page d'accueil, contactez-nous, à propos de nous, les principales catégories. Cela ressemble à la vraie affaire et fonctionnera très bien dans les moteurs de recherche obscurs dont vous ne vous souciez pas. Il ne sera également d'aucune utilité pour vos concurrents. Permettez-lui d'être indexé pour qu'ils le trouvent, donnez-lui un nom évident comme sitemap.xml.
Créez maintenant votre véritable sitemap avec du code. Donnez-lui un nom tel que «product-information-sitemap.xml» afin qu'il soit un nom raisonnable mais pas plus facile à deviner que votre mot de passe.
Dans votre configuration apache pour le dossier sitemap, mettez quelque chose en place pour que ce second sitemap soit accessible par les moteurs de recherche mais pas indexé:
<IfModule mod_rewrite.c>
<Files product-information-sitemap.xml>
Header set X-Robots-Tag "noindex"
</Files>
</IfModule>
Maintenant, créez le code pour le garder à jour, envisagez un troisième plan du site pour les images. Dowwngrade comme requis pour créer la «feinte». Faites également attention aux horodatages, Google y prête attention et cela est important si votre plan du site est important.
Créez maintenant un travail «cron» pour soumettre régulièrement le plan du site de vos produits à Google. Dans votre entrée crontab, ajoutez quelque chose comme ceci pour soumettre votre vrai plan du site chaque semaine:
0 0 * * 0 wget www.google.com/webmasters/tools/ping?sitemap=http%3A%2F%2Fwww.example.com%2Fsitemaps%2Fproduct-information-sitemap.xml
Notez que l'URL est encodée en URL.
Vous pouvez également compresser votre sitemap si la taille est un problème, bien que votre serveur Web doive le servir si vous l'avez activé.
Votre robots.txt n'a pas besoin d'être spécial, tant qu'il n'interdit pas l'entrée à vos sitemaps, cela devrait aller. Il n'est vraiment pas nécessaire d'envoyer différents fichiers robots.txt en fonction des chaînes d'agent utilisateur ou de quelque chose de si compliqué. Retirez simplement votre précieux contenu dans un fichier supplémentaire non publié et soumettez-le à Google sur une tâche cron (plutôt que d'attendre le bot). Facile.
Je ne vois pas pourquoi la structure d'un site pourrait vous causer des problèmes avec un concurrent?
Le but du plan du site est d'indexer les pages, afin que les gens puissent les trouver plus facilement, ce qui, jusqu'à un certain point, doit révéler comment votre site est organisé, comme:
/news/
contient vos articles de nouvelles/forum/
est l'endroit où toutes les discussions du forum sontCeux-ci seront indexables, pour gagner plus de trafic et présenter des informations.
Les dossiers que vous ne voulez pas avoir d'index sont comme
Ensuite, si tel est le cas, ceux-ci ne devraient pas du tout figurer dans votre plan du site. De plus, vous pouvez également exclure ceux de l'indexation.
Si vous avez les adresses IP des bots que vous souhaitez autoriser:
<Limit GET POST PUT>
order deny,allow
deny from all
allow from 192.168.1.1 # IP 1
allow from 192.168.1.2 # IP 3
allow from 192.168.1.3 # IP 2
</LIMIT>
Si vous le souhaitez en fonction de la chaîne de l'agent utilisateur:
Order Allow,Deny
allow from env=good_bot_1
allow from env=good_bot_2
Une façon que vous pouvez essayer: dans une session d'exploration habituelle, les robots Google accèdent à robots.txt, puis accèdent au fichier sitemap. Insérez un cookie pour toutes les portions de robots.txt et n'autorisez l'accès au plan du site qu'aux personnes disposant du cookie. Il y aura un problème lorsque les robots Google n'accepteront pas les cookies. Faites le contraire. Introduisez un cookie lorsqu'un utilisateur accède à une page autre que le fichier robots.txt et refusez l'accès au plan du site pour ceux qui possèdent le cookie. Aussi, donnez un nom brouillé à votre plan du site, quelque chose qui change avec le temps et le rend impossible à deviner. Si vos concurrents ont activé les cookies dans leur navigateur, il leur sera extrêmement difficile d'accéder au plan du site à moins qu'ils ne suivent le chemin exact suivi par un moteur de recherche.
Je fais l'hypothèse que j'ai bien compris votre exigence, donc je fais preuve de courage pour répondre.
donnez un lien image vers votre plan du site juste avant votre </html>
tag. Utilisez un fichier gif transparent de 1px:
<a href="sitemap.xml"><img src="transparent.gif" alt="" height="1" width="1" /></a>
Dans la page qui contient un lien vers votre plan du site, définissez votre métabalise associée:
<meta name="robots" content="{index or noindex},follow">
vérifiez l'état visuel lorsque vous appuyez sur Ctrl+ Apour sélectionner toutes les pages. Le lien 1px est-il visible, risqué pour vous?
Si vous dites oui, une autre option peut être:
<a href="sitemap.xml"> </a>
De cette façon, un utilisateur normal peu curieux ne remarquera pas votre lien. Les moteurs de recherche en seront conscients. Mais sachez que la nature inhérente de votre question implique l'impossibilité.
Je dis impossibilité parce que si un utilisateur recherche dans Google par exemple avec ces termes
* site:www.yoursite.com
le monde entier peut voir tous vos liens s'ils ne se lassent pas de cliquer sur les next
liens.
J'espère que ces aides.