Récemment, j'ai permis à tous mes serveurs de tout servir via HTTP et HTTPS. Les utilisateurs peuvent accéder à n’importe quel site via http://www.example.com ou https://www.example.com . Toutes les pages sont identiques entre les versions, donc http://www.example.com/about.php est identique à https://www.example.com/about.php et ainsi de suite.
Les URL étant relatives, elles ne mentionnent donc pas le protocole à une exception près. En d'autres termes, si la page est chargée avec HTTP, elle créera un lien vers d'autres pages, images, CSS, Javascript sur HTTP et la même chose qu'avec HTTPS, afin d'éviter les avertissements de contenu mixte.
Maintenant à propos de cette exception. C'est dans le fichier robots.txt:
Sitemap: http://www.example.com/sitemap.php
Apparemment ceci l'URL doit être absolue .
Maintenant, le problème, je vois si, lorsque Google lit https://www.example.com/robots.txt il obtient un sitemap HTTP! La documentation sur robots.org indique qu'il est possible de spécifier plusieurs sitemaps, mais si je ne suis pas sûr de placer les sitemap HTTP et HTTPS est une bonne idée, car ils contiendront chacun une liste de pages identiques (une avec HTTP et une avec HTTPS). .
Comment le plan Sitemap dans le fichier robots.txt doit-il être géré pour les sites Web acceptant HTTP et HTTPS?
Quelques idées qui me sont venues à l'esprit:
Un sitemap situé sur http://www.example.com/sitemap.php
ne peut contenir que les URL de http://www.example.com/
. ¹ Le schéma et le ) Hôte doit être identique .
Donc, si vous 1) souhaitez fournir des plans Sitemap pour les deux protocoles et 2) que vous liez les deux via le champ Sitemap
du fichier robots.txt, vous devez fournir des fichiers robots.txt distincts pour HTTP et HTTPS:
# http://www.example.com/robots.txt
Sitemap: http://www.example.com/sitemap.php
# https://www.example.com/robots.txt
Sitemap: https://www.example.com/sitemap.php
(Cela devrait être facile à faire avec Apache, voir par exemple les réponses à Y at-il un moyen d’interdire l’exploration de HTTPS uniquement dans le fichier robots.txt? )
Mais vous voudrez peut-être fournir un sitemap uniquement pour la variante canonique (par exemple, uniquement pour HTTPS), car il est inutile de laisser les moteurs de recherche analyser le sitemap pour la variante non canonique, car ils ne souhaitent généralement pas indexer. n'importe laquelle de ses URL. Donc, si HTTPS doit être canonique:
canonical
.¹ Sauf si soumet en croix sont utilisés.
http://www.example.com/about/
http://www.example.com/about
http://example.com/about/
http://example.com/about
https://www.example.com/about/
https://www.example.com/about
Ce type de contenu dupliqué que Google gère déjà depuis plusieurs années. Alors d'abord, ne vous inquiétez pas du problème de contenu en double.
Il est tout à fait judicieux de servir les versions HTTP et HTTPS du site simultanément, en particulier lorsque vous migrez votre site de HTTP à HTTPS. Stackoverflow l'a également fait par le passé.
Ici, Google n'indexera qu'une seule version de votre page Web, cela signifie qu'ils n'indexeront pas les deux versions http://www.example.com/about.php
et https://www.example.com/about.php
. Dans la plupart des cas, par défaut, ils choisiront HTTPS
Et encore une fois, il n’est pas nécessaire d’ajouter votre fichier sitemap dans le fichier robots.txt. En particulier lorsque vous pensez à Google (ce n’est pas ask.com), car il nous donne la possibilité de soumettre notre sitemap à l’outil Webmaster. Créez donc deux propriétés dans la console de recherche, telles que http://www.example.com
et https://www.example.com
, puis soumettez-y un plan Sitemap.
Je ne sais pas pourquoi vous êtes si sérieux à propos de sitemap, robots.txt et de tout le reste. Google peut explorer et indexer n’importe quel site Web sans sitemap, par exemple, wikipedia n’a pas de sitemap, mais crawl souvent, car ils ont une bonne structure de liens internes.