Google est-il toujours ajax
Pouvez-vous maintenant faire confiance à Google pour ramper les sites ajax?
Résumé:
Le 14 octobre, Google a annoncé qu’ils ne recommandent plus le programme de rampe Ajax qu’ils ont publié en 2009. Cela soulève la question de savoir si vous pouvez faire confiance à Google pour ramper avec succès et indexer un site Ajax.
Points clés:
- Les concepteurs Web et les ingénieurs préfèrent utiliser l’Ajax pour construire des applications à une page (SPA) avec des frameworks comme Angular et React.
- AJAX permet des applications Web interactives lisses et interactives qui effectuent des applications de bureau.
- Dans un spa, le contenu HTML n’est pas initialement chargé dans le navigateur. Au lieu de cela, Ajax utilise JavaScript pour communiquer dynamiquement avec le serveur Web et rendre le HTML.
- Google a pu faire du contenu JavaScript, mais SEO pour les sites Pure Spa Ajax a posé des défis.
- En 2009, Google a introduit la solution de randable Ajax, qui impliquait de l’utilisation d’URL ou de balises Meta à “fragment échappé” pour demander à Google de récupérer une version pré-renvoyée de la page avec le HTML complet.
- Malgré la capacité de Google à ramper JavaScript, de nombreux sites qui ont permis à Google d’explorer leurs sites Spa Ajax ont connu un succès limité.
- Certains sites ont même vu une baisse significative du trafic organique après le passage à la mise en œuvre de l’Ajax.
- Le 14 octobre, Google a annoncé qu’ils ne recommandent plus leur ancienne proposition de rampe de l’Ajax, mais ils le soutiennent toujours.
- Il y a une idée fausse selon laquelle Google peut désormais explorer les sites de l’Ajax sans problème, mais il est important de noter qu’ils déclarent qu’ils sont “généralement capables” de rendre et de comprendre les pages Web comme les navigateurs modernes.
- Il est crucial de considérer la langue utilisée par Google et de ne pas se fier uniquement à l’hypothèse qu’ils peuvent comprendre pleinement les pages de l’Ajax.
Des questions:
- Google peut-il indexer avec succès les sites ajax?
- Quel est le but de l’utilisation de l’Ajax dans la conception Web?
- Que se passe-t-il lorsqu’un spa est chargé initialement?
- Quels défis ont des sites de l’Ajax historiquement confrontés à un référencement?
- Quelles ont été les méthodes proposées par Google en 2009 pour rendre Ajax Rawlable?
- L’autorisation de Google a-t-il rampé les sites de l’Ajax a entraîné une indexation réussie pour de nombreux sites Web?
- Quel impact négatif certains sites ont-ils vécu après la mise en œuvre de l’Ajax?
- Qu’est-ce que Google a annoncé le 14 octobre concernant leur recommandation de rendez-vous de l’Ajax?
- Est-il exact de croire que Google peut désormais ramper efficacement les sites de l’Ajax?
- Pourquoi est-il important de considérer la langue de Google dans leur annonce?
- Pouvez-vous faire confiance à Google pour bien comprendre et explorer votre site Ajax?
- Comment les concepteurs Web et les ingénieurs utilisent-ils l’Ajax dans la création d’applications Web?
- Quel est le rôle de JavaScript dans le processus de rendu d’un site Ajax?
- Pourquoi certains sites Web ont-ils recours à des instantanés HTML pré-renvoyés comme solution?
- Quelle idée fausse existe sur la capacité de Google à ramper les sites de l’Ajax?
Réponses:
- Google peut ramper les sites de l’Ajax, mais le succès de l’indexation varie et n’est pas garanti.
- L’AJAX est utilisé dans la conception Web pour créer des applications (SPA) à page unique qui offrent une expérience utilisateur fluide et interactive similaire aux applications de bureau dédiées.
- Lorsqu’un spa est chargé initialement, le contenu HTML n’est pas récupéré et rendu. Au lieu de cela, le navigateur s’appuie sur JavaScript pour communiquer avec le serveur et rendre dynamiquement le HTML.
- Historiquement, les sites de l’Ajax ont été confrontés à des défis avec le référencement parce que la capacité de Google à ramper le contenu JavaScript était limitée. Cela a conduit à des difficultés d’indexation et de classement efficacement.
- En 2009, Google a proposé deux méthodes pour rendre Ajax Rawlable. L’une impliquait d’utiliser des URL “fragment échappé”, ce qui a abouti à des URL laides. L’autre méthode a utilisé un Méta = “fragment” Tag sur la page pour demander à Google de récupérer une version pré-renvoyée avec un HTML complet.
- Permettre à Google de ramper les sites de l’Ajax n’a pas toujours entraîné une indexation réussie pour de nombreux sites Web. Certains sites n’ont vu qu’une partie de leurs pages entièrement rendue et indexée, tandis que d’autres ont connu une baisse significative du trafic organique.
- Après la mise en œuvre de l’Ajax, certains sites Web ont vu un impact négatif sur leur trafic organique et ont dû se remettre de la baisse des visiteurs.
- Le 14 octobre, Google a annoncé qu’ils ne recommandent plus leur ancienne proposition de rampe de l’Ajax, mais ils continuent de le soutenir. Cela signifie qu’ils ne suggèrent pas activement son utilisation mais reconnaissent toujours sa fonctionnalité.
- Il n’est pas exact de supposer que Google peut désormais explorer efficacement les sites de l’Ajax sans aucun problème. Bien qu’ils déclarent qu’ils sont «généralement capables» de rendre et de comprendre les pages Web comme les navigateurs modernes, il est essentiel de considérer la langue utilisée et de ne pas compter uniquement sur cette déclaration.
- Il est important de considérer la langue de Google dans leur annonce car ils ne fournissent pas une garantie d’indexation transparente pour les sites de l’Ajax. L’expression “généralement capable” implique le potentiel de limitations et de défis dans la compréhension et les pages Ajax pleinement comprises.
- Faire confiance à Google pour bien comprendre et ramper un site Ajax n’est pas recommandé sans plus de tests et de surveillance. Le succès de l’indexation peut varier, et il est crucial de considérer des solutions alternatives comme les instantanés HTML avant le rendu.
- Les concepteurs Web et les ingénieurs utilisent Ajax pour créer un spa avec des cadres comme Angular et React, permettant le développement d’applications Web qui offrent une expérience utilisateur interactive et fluide similaire aux applications de bureau dédiées.
- JavaScript joue un rôle important dans le processus de rendu d’un site de l’Ajax. Il communique dynamiquement avec le serveur Web pour créer et rendre le contenu HTML pour que l’utilisateur puisse interagir avec.
- Les sites Web ont recours à des instantanés HTML avant le rendu comme une solution car certains frameworks Ajax, comme Angular, ne prennent pas encore en charge le rendu côté serveur. Le pré-rendu permet de créer des instantanés HTML qui sont servis à des moteurs de recherche, assurant une indexation complète et une visibilité.
- Il y a une idée fausse que la capacité de Google à ramper les sites de l’Ajax est désormais impeccable. Cependant, il est important de noter que leur capacité à comprendre et à ramper le contenu JavaScript s’est améliorée, mais les défis et les limitations peuvent encore exister.
Pouvez-vous maintenant faire confiance à Google pour ramper les sites ajax
Et puis, le 14 octobre, Google a dit ceci:
Google Crawl a-t-il le contenu? [fermé]
Voulez améliorer cette question? Mettez à jour la question afin qu’elle se concentre sur un seul problème en modifiant ce message.
Fermé il y a 7 ans .
Sur la page d’accueil de mon site, j’utilise la fonction ajax de jQuery pour réduire une liste des activités récentes des utilisateurs. L’activité récente est affichée sur la page, et chaque ligne de l’activité récente comprend un lien vers le profil utilisateur de l’utilisateur qui a fait l’activité. Google passera-t-il en fait l’appel AJAX pour réduire ces informations et l’utiliser pour calculer la pertinence de la page / le flux de jus de liaison? J’espère que ça ne fait pas Parce que les pages de profil utilisateur ne sont pas très dignes de Google Index, et je ne veux pas que tous ces liens vers les pages de profil utilisateur diluent le flux de jus de liaison de ma page d’accueil loin des autres liens plus importants.
Pouvez-vous maintenant faire confiance à Google pour ramper les sites ajax?
Le 14 octobre, Google a annoncé qu’il ne recommande plus le programme de rampe Ajax qu’ils ont publié en 2009. Le chroniqueur Mark Munroe plonge dans la question de savoir si cela signifie que vous pouvez maintenant compter sur Google pour ramper avec succès et indexer un site Ajax.
Mark Munroe le 13 novembre 2015 à 9h18 | Temps de lecture: 7 minutes

Les concepteurs Web et les ingénieurs adorent Ajax pour la construction d’applications à page unique (SPA) avec des cadres populaires comme Angular et React. Les implémentations pures de l’AJAX peuvent fournir une application Web interactive fluide qui fonctionne plus comme une application de bureau dédiée.
Avec un spa, généralement, le contenu HTML n’est pas chargé dans le navigateur sur la récupération initiale de la page Web. Ajax utilise JavaScript pour communiquer dynamiquement avec le serveur Web pour créer le HTML pour rendre la page et interagir avec l’utilisateur. (Il y a une technique appelée “Rendu côté serveur” où le javascript est réellement exécuté sur le serveur et la demande de page est renvoyée avec le HTML rendu. Cependant, cette approche n’est pas encore prise en charge sur tous les cadres de spa et ajoute de la complexité au développement.)
L’un des problèmes avec les sites Spa Ajax a été le référencement. Google rampe en fait du contenu JavaScript depuis un certain temps. En fait, cette récente série de tests a confirmé Google’S Capacité à faire des liens, des métadonnées et du contenu insérés via JavaScript. Cependant, les sites Web utilisant des cadres Pure Spa Ajax ont historiquement connu des défis avec SEO.
En 2009, Google a trouvé une solution pour rendre Ajax Rawlable. Cette méthode crée soit “fragment échappé” URL (URL laides) ou plus récemment, nettoyer les URL avec un Méta =”fragment” Tag sur la page.
L’URL du fragment ou la balise de méta-fragment échappé demande à Google de sortir et d’obtenir une version pré-rendue de la page qui a exécuté tout le javascript et a le HTML complet que Google peut analyser et indexer. Dans cette méthode, l’araignée sert un code source de page totalement différent (HTML VS. Javascript).
Avec le mot que Google Crawls Javascript, de nombreux sites ont décidé de laisser Google ramper leurs sites Spa Ajax. En général, cela n’a pas été très réussi. Au cours de la dernière année, j’ai consulté pour quelques sites Web avec une implémentation angulaire de l’Ajax. Google a réussi et environ 30% des pages de Google’Le cache a été entièrement rendu. Les 70% autres étaient vides.
Un site d’alimentation populaire est passé à Angular, croyant que Google pourrait le ramper. Ils ont perdu environ 70% de leur trafic organique et se remettent toujours de cette débâcle. En fin de compte, les deux sites sont allés à des instantanés HTML avant le rendu, la solution de rampe Ajax recommandée à l’époque.
Et puis, le 14 octobre, Google a dit ceci:
Nous ne recommandons plus la proposition de rampe de l’Ajax que nous avons faite en 2009.
Notez qu’ils sont toujours justificatif leur ancienne proposition. (Il y a eu des articles annonçant qu’ils ne le soutiennent plus, mais ce n’est pas vrai – ils ne recommandent tout simplement plus cette approche.)
En dépréciant l’ancienne recommandation, ils semblaient dire qu’ils peuvent maintenant ramper Ajax.
Ensuite, juste une semaine après l’annonce, un client avec un site nouvellement lancé m’a demandé de le vérifier. C’était un site angulaire, encore une fois une implémentation Spa Ajax.
En examinant Google’index et cache, nous avons vu des pages partiellement indexées sans que tout le contenu soit rampé. J’ai réitéré ma recommandation antérieure d’utilisation d’instantanés HTML ou d’amélioration progressive.
Ce site a été construit avec Angular, qui ne prend pas encore en charge le rendu côté serveur (encore une fois, dans ce cas, le serveur rend initialement une page pour servir le document HTML), donc l’amélioration progressive serait difficile à prendre en charge, et les instantanés HTML sont toujours la meilleure solution pour eux pour eux.
Elle répondit, “Mais pourquoi? Tout ce que je lis me dit que Google peut ramper ajax.”
Peuvent-ils? Laisser’s jetez un aperçu de la nouvelle recommandation en ce qui concerne l’Ajax.
Google’S Nouvelles recommandations ajax
En expliquant pourquoi ils déprécient l’ancienne recommandation, disent-ils (mettant l’accent sur la mienne):
Nous sommes généralement capable Pour rendre et comprendre vos pages Web comme les navigateurs modernes.
Beaucoup de gens pourraient être prompts à conclure qu’ils peuvent désormais ramper Ajax sans problème. Mais regardez la langue: “généralement capable”? Pariez-vous vos revenus d’entreprise sur les connaissances que Google est “généralement capable” Pour comprendre votre page?
Serait-ce que je prends juste la sémantique? Laisser’s examiner l’annonce plus loin. Plus tard dans leur annonce, ils déclarent en ce qui concerne l’Ajax:
Étant donné que les hypothèses pour notre proposition de 2009 ne sont plus valables, nous vous recommandons de suivre les principes de l’amélioration progressive.
Ils ne font pas’T épelez-le dans leur annonce, mais en recommandant une amélioration progressive (qui charge du HTML pour les navigateurs qui’t Support javascript), ils semblent dire implicitement, “Enfiler’T compter sur nous rampant votre javascript.” Pourquoi recommander cette méthode si en effet Google peut régulièrement ramper les sites de spa ajax?
Je craignais d’avoir peut-être trop analysé Google’s mots, mais alors…
John Mueller confirme que Google a encore des problèmes avec Ajax
Le 27 octobre (moins de deux semaines après l’annonce de Google), John Mueller, sur son webmaster Central Hangout, a confirmé que Google avait en effet des problèmes avec l’Ajax.
Vous pouvez voir l’échange vers environ 1:08:00 dans la vidéo, où il y avait une question concernant une implémentation angulaire spécifique:
Ils ont encore du mal à rendu, et ils s’attendent à s’améliorer avec le temps. John recommande certaines actions pour déboguer les problèmes.
En fin de compte, il a recommandé d’utiliser des instantanés HTML jusqu’à ce que Google s’améliore à Ajax (oui, la méthode qui était officiellement dépréciée).
Alors que faire?
- Amélioration progressive. Le rendu côté serveur serait nécessaire pour une amélioration progressive, et il n’est pas encore pris en charge par Angular. Cependant, le prochain Angular 2.0 prendra en charge le rendu côté serveur. React prend en effet le rendu côté serveur aujourd’hui. C’est cependant plus de travail que de créer simplement des instantanés HTML. Vous devez vous assurer de rendre des liens requis pour que Google puisse ramper et indexer un contenu supplémentaire chargé dans la page. Néanmoins, pour les sites utilisant un framework Ajax, ce serait mon approche recommandée. (Et, bien sûr, c’est Google’s approche recommandée.)
- Instantanés HTML avant le rendu. Encore une fois, Don’il ne sois pas confus si vous avez entendu ou lu que Google ne prend plus en charge cette méthode. Ils continueront à le soutenir dans un avenir prévisible. Ils ne le recommandent plus. Cette méthode fonctionne; Cependant, l’écriture du code pour préséder et servir les instantanés n’est pas trivial. La bonne nouvelle est qu’il y a plusieurs vendeurs tels que Prerender.Io qui fera le travail pour vous à un coût relativement bas. C’est probablement l’approche la plus simple. Cette méthode n’est pas idéale. Servir différents code source aux robots vs. Browsers (HTML VS. Javascript) peut être problématique. Il peut être considéré comme une technique de camouflage, et il n’est pas nécessairement évident ce que les robots sont servis. Il’s important pour surveiller Google’S Cache pour s’assurer qu’ils ne servent pas la mauvaise page. Néanmoins, si vous utilisez une plate-forme qui ne prend pas en charge le rendu côté serveur, cela peut être votre seule solution.
Mieux vaut prévenir que désolé
Même si j’avais vu des preuves que Google rampait régulièrement des sites de l’Ajax, je me méfierais toujours. Il faut beaucoup plus de ressources et beaucoup plus de temps pour rendre pleinement une page que pour simplement servir HTML.
Qu’arrivera-t-il aux sites avec des centaines de milliers ou des millions de pages? Comment cela aura-t-il un impact sur le budget d’exemple? Le taux d’exploration restera-t-il cohérent?
Avant de recommander cette approche, je’d Plutôt attendre et voir des preuves solides que Google peut et fait systématiquement des applications à page unique Ajax purs et pures sans impact négatif sur le taux de chapelure, l’indexation et les classements. Veuillez partager vos propres expériences.
Les opinions exprimées dans cet article sont celles de l’auteur invité et pas nécessairement un terrain de moteur de recherche. Les auteurs du personnel sont répertoriés ici.
Comment JavaScript et Ajax affectent-ils l’indexation dans Google?
Au fil du temps, Google a considérablement amélioré son Indexation de JavaScript et Ajax. Au début, il n’a pas’t index tout ou suivi des liens apparaissant dans le contenu chargé via ces cadres. Mais alors, petit à petit, il a commencé à indexer certaines implémentations et à améliorer ses capacités. De nos jours, il peut indexer de nombreuses implémentations différentes, et suivre les liens chargés Ajax ou API Fetch. Néanmoins, Il y aura toujours des cas où il pourrait ne pas le faire.
Pour analyser les cas dans lesquels Google pourrait finir par ne pas indexer notre site, nous devons d’abord comprendre le concept de Rendu côté client (RSE). Cela implique que Le HTML est peint côté client avec JavaScript, généralement en utilisant Ajax en excès. À l’origine, les sites Web ont toujours peint le côté serveur HTML (Rendu côté serveur ou ssr), mais depuis un certain temps maintenant, La RSE est devenue populaire, avec l’arrivée de frameworks javascript comme Angular, React et Vue. Cependant, La RSE affecte négativement l’indexation, Le site Web de rendu les performances, et par conséquent, SEO.
Comme nous’VE déjà expliqué avant, Pour assurer l’indexation dans tous les moteurs et situations de recherche, En plus d’atteindre de bonnes performances, La meilleure solution consiste à utiliser un cadre universel, Comme pour ces mesures, nous nous retrouvons avec quelque chose appelé Rendu hybride. Il consiste en Peindre le site Web sur le serveur sur la première charge, puis sur le client via JavaScript et Ajax alors que la navigation passe aux liens qui suivent. Bien que, en réalité, il y ait plus de situations où l’utilisation du terme de rendu hybride est également valable.
Parfois, l’entreprise de développement utilise la RSE et le fait’t nous offrir la possibilité d’utiliser un cadre universel. Ce Le développement Web basé sur la RSE nous causera des ennuis, à une plus grande ou moindre mesure, Selon le Crawler et ses algorithmes de classement. Dans cet article, nous allons analyser Quels sont ces problèmes avec Google’S Crawler sont et comment les résoudre.
Problèmes de RSE pendant le chargement initial d’une page
Tout d’abord, nous allons analyser les problèmes d’indexation qui se produisent Dès que nous entrons dans une URL en dehors du site Web, Et lorsque le HTML est rendu côté client avec JavaScript.
Problèmes à la suite d’un rendu lent
Google’Le processus d’indexation du S passe par les étapes suivantes:

- Rampant: Googlebot demande une URL au serveur.
- Première vague d’indexation: Il indexe instantanément le contenu peint sur le serveur et obtient de nouveaux liens vers la rampe.
- Il génère le côté client peint HTML en exécutant JavaScript. Ce processus est coûteux en calcul (il peut être fait dans l’instant, ou prendre plusieurs jours, même en attendant d’obtenir les ressources nécessaires pour le faire).
- Deuxième vague d’indexation: Avec le côté client peint HTML, le contenu restant est indexé et de nouveaux liens à ramper sont obtenus.
Outre le fait que Les pages peuvent prendre plus de temps à indexer entièrement, retardant ainsi l’indexation des pages suivantes liées, si le rendu d’une page est lent, Googlebot’Le rendu peut laisser des pièces non peintes. Nous’Ve a testé cela en utilisant l’option de “Récupérer comme google” fourni par Google Search Console, Et la capture d’écran qu’il génère’t peindre tout ce qui prend plus de 5 secondes pour être affiché. Cependant, il génère le HTML qui prend plus de temps que ces 5 secondes. Pour comprendre pourquoi cela se produit, nous devons garder à l’esprit que Console de recherche Google’S Renderer construit d’abord le HTML exécutant le javascript avec Googlebot’s rendu, puis peint la page’s pixels. La première tâche est celle qui doit être prise en compte pour l’indexation, à laquelle nous nous référons avec le terme CSR. Dans Google Search Console, nous pouvons voir le HTML généré lors de la première vague d’indexation, et non celle générée par Googlebot’Slinger S.

Dans Google Search Console, nous ne pouvons pas voir le HTML peint par le javascript, exécuté par GoogleBot ��et utilisé dans la dernière phase d’indexation. Pour ce faire, nous devons utiliser cet outil: https: // Search.Google.com / test / mobile-friendly �� cliquez pour tweeter
Dans les tests, nous’Ve a conduit, lorsque le rendu HTML a pris plus de 19 secondes, il n’a pas fait’t à indexer n’importe quoi. Bien que ce soit longtemps, dans certains cas, il peut être dépassé, surtout si nous utilisons de manière intensive Ajax, et dans ces cas Google’Le rendu S, tout comme tout rendu, doit vraiment attendre que les étapes suivantes se produisent:
- Html est téléchargé et traité pour demander des fichiers liés et créer DOM.
- CSS est téléchargé et traité, Pour demander des fichiers liés et créer CSSOM.
- Javascrip est téléchargé, compilé et exécuté, pour lancer Ajax Demande (s).
- La demande Ajax est déplacée dans une file d’attente de demande, En attente d’être répondu, avec d’autres fichiers demandés.
- La demande Ajax est lancé et il doit voyager dans le réseau vers le serveur.
- Le serveur répond aux demandes via le réseau et enfin, Nous devons attendre que JavaScript s’exécute, afin de peindre le contenu de la page’modèle SHTML.
Les temps de demande et de téléchargement du processus que nous venons de décrire dépendent du réseau de réseau et de serveur pendant cette période. De plus, Googlebot utilise uniquement HTTP / 1.1, ce qui est plus lent que HTTP / 2, car les demandes sont traitées avec l’autre, et pas toutes en même temps. Il’s nécessaire que le client et le serveur permettent à HTTP / 2 d’être utilisé, c’est pourquoi Googlebot n’utilisera que HTTP / 1.1, même si notre serveur autorise HTTP / 2. Pour résumer, cela signifie que Googlebot attend chaque demande de finition afin de lancer la suivante, et elle’s possible il a gagné’t Essayez de paralléliser certaines demandes en ouvrant diverses connexions, comme le font les navigateurs (bien que nous ne faisons pas’Je sais exactement comment ça fait). Par conséquent, nous sommes dans une situation où Nous pourrions dépasser ces 19 secondes que nous avons estimées plus tôt.
Imaginez, par exemple, qu’avec des images, les demandes CSS, JavaScript et Ajax, plus de 200 demandes sont lancées, chacune prenant 100 ms. Si les demandes Ajax sont envoyées à l’arrière de la file d’attente, nous’probablement dépasser le temps requis pour que leur contenu soit indexé.
D’un autre côté, en raison de ces problèmes de performance RSE, Nous obtiendrons une pire marque pour la métrique FCP (première peinture contente) dans Pagespeed en termes de rendu et de son WPO, et en conséquence, pire classement.
Problèmes d’indexation:
Lors de l’indexation du contenu peint côté client, Googlebot peut rencontrer les problèmes suivants, ce qui empêchera l’indexation du HTML généré par JavaScript:
- Ils utilisent un Version de JavaScript Le chenilles ne fait pas’t reconnaître.
- Ils utilisent un API JavaScript Non reconnu par Googlebot (actuellement, nous savons que les sockets Web, WebGL, WebVR, indexDDB et WebSQL ne sont pas pris en charge – plus d’informations sur https: // développeurs.Google.com / search / docs / guides / rendu).
- Les fichiers javascript sont bloqués par des robots.SMS.
- Les fichiers JavaScript sont servis via HTTP tandis que le site Web utilise HTTPS.
- Il y a javascript les erreurs.
- Si la demande demande autorisation de l’utilisateur Pour faire quelque chose, et cela dépend du rendu du contenu principal, il a gagné’t à être peint, car Googlebot nie toute autorisation’s demandé par défaut.
Pour savoir si nous souffrons de ces problèmes, nous devons utiliser Google’s test convivial pour les mobiles. Il nous montrera une capture d’écran de la façon dont une page est peinte à l’écran, similaire à la console de recherche Google, mais aussi il nous montre le Code HTML généré par le rendu (comme mentionné précédemment), Journal des registres des erreurs dans le code JavaScript, et JavaScript Caractéristiques que le rendu ne peut pas encore interpréter. Nous devons utiliser cet outil pour tester toutes les URL représentatives de chaque modèle de page sur notre site Web, pour vous assurer que le site Web est indexable.
Nous devons garder à l’esprit que dans le Html généré par l’outil précédent, tous métadonnées (y compris l’URL canonique) sera ignoré par Googlebot, car il ne prend en compte que les informations lorsqu’elles’s peint sur le serveur.
Problèmes de RSE en ce qui concerne la navigation à la page suivante
Maintenant, laisse’s Voir ce qui se passe lorsque nous utilisons un lien pour naviguer, une fois que nous’re-sur le site Web, et le HTML est peint côté client.
Indexation des problèmes
Contrairement au RSE pendant la charge initiale, La navigation à la page suivante commutant le contenu principal via JavaScript est plus rapide que SSR. Mais nous’auront des problèmes d’indexation si:
- Liens Don’T a une URL valide renvoyant 200 OK dans leur Attribut HREF.
- Le serveur renvoie une erreur lors de l’accès directement à l’URL, sans JavaScript, ou avec JavaScript activé et supprimer tous les caches. Soyez prudent avec ceci: si nous naviguons vers la page en cliquant sur un lien, cela peut sembler’S fonctionne, car il est chargé de javascript. Même lors de l’accès directement, si le site Web utilise un employé de services, le site Web peut simuler une réponse correcte, en chargeant son cache. Mais Googlebot est un robot sans état, raison pour laquelle il ne le fait pas’T Prenez en compte n’importe quel cache de travailleur du serveur, ou toute autre technologie JavaScript comme le stockage local ou le stockage de session, il obtiendra donc une erreur.
De plus, pour que le site Web soit accessible, l’URL doit changer en utilisant JavaScript avec le API d’histoire.
Que se passe-t-il avec les fragments maintenant que Google peut indexer Ajax?
Les fragments font partie d’une URL qui peut apparaître à la fin, précédé d’un hachage #. Par exemple:
http: // www.homme de niveau humain.com / blog.Exemple HTML #
Ce type d’URL n’atteigne jamais le serveur, Ils sont gérés uniquement du client. Cela signifie que lorsque vous demandez l’URL ci-dessus au serveur, il obtiendrait la demande de “http: // www.homme de niveau humain.com / blog.html”, Et dans le client, le navigateur fait défiler vers le fragment du document référé à. C’est l’utilisation commune et initialement prévue pour ces URL, mieux connu sous le nom de Ancres HTML. Et une ancre, en réalité, est un lien (le “un” tag en html vient de ancre). Cependant, à l’époque, Des fragments ont également été utilisés pour modifier les URL via JavaScript sur des pages chargées par Ajax, l’intention de laisser l’utilisateur naviguer dans son historique de navigation. Il a été implémenté de cette façon, car à l’époque le fragment était la seule partie de l’URL que nous pouvions modifier en utilisant JavaScript, c’est pourquoi les développeurs en ont profité pour les utiliser d’une manière’t prévu. Cela a changé avec l’arrivée de l’API de l’histoire, car elle a permis de modifier l’URL entière via JavaScript.
À l’époque où Google pourrait’t Index Ajax, si une URL modifiait son contenu via Ajax, sur la base de la partie de fragment, nous savions que cela n’allait qu’indexer l’URL et le contenu sans prendre en compte le fragment. Alors… qu’arrive-t-il aux pages avec des fragments maintenant que Google peut indexer Ajax? Le comportement est exactement le même. Si nous lions une page avec un fragment et qu’elle modifie son contenu lorsqu’il est accessible par le fragment, il indexera le contenu en ignorant le fragment, et la popularité ira à cette URL, Parce que Google fait confiance au fragment va être utilisé comme ancre, et non à modifier le contenu, comme il se doit.
Cependant, Google index actuellement les URL avec un hashbang (#!). Cela peut être mis en œuvre en ajoutant simple à la marque d’exclamation ou claquer, Et Google le fera fonctionner, pour maintenir la compatibilité en arrière avec une spécification obsolète pour rendre AJAX indexable. Cette pratique, cependant, n’est pas recommandée, car maintenant elle devrait être mise en œuvre avec l’API de l’histoire, et en plus, Google pourrait soudainement arrêter d’indexer les URL de hashbang à tout moment.
Bloquer l’indexation des réponses partielles via Ajax
Quand Ajax La demande est envoyée à URL d’une API REST ou GraphQL, nous’re a renvoyé un JSON ou un morceau d’une page nous ne’t Want indexé. Par conséquent, nous devons bloquer l’indexation des URL auxquelles ces demandes sont dirigées.
À l’époque où nous pourrions les bloquer en utilisant des robots.SMS, Mais depuis Googlebot’S Renderer est arrivé à exister, nous ne pouvons pas bloquer aucune ressource utilisée pour peindre HTML.
Actuellement, Google est un peu plus intelligent et c’est pas ca’t généralement Essayez d’indexer les réponses avec JSons, mais si nous voulons nous assurer qu’ils’t indexé, La solution universelle applicable à tous les moteurs de recherche est de faire toutes les URL utilisées avec Ajax pour accepter uniquement les demandes effectuées via la méthode postale, Parce que ce n’est pas’t utilisé par les robots. Lorsqu’une demande de GET atteint le serveur, il doit renvoyer une erreur 404. En termes de programmation, ce n’est pas’t Force-nous à supprimer les paramètres de l’URL’S quererystring.
Il y a aussi la possibilité d’ajouter le HTTP “X-Robots-Tag: NOINDEX” En-tête (inventé par Google) aux réponses Ajax, ou pour faire revenir ces réponses avec 404 ou 410. Si nous utilisons ces techniques sur le contenu chargé directement à partir du HTML, il a gagné’t Soyez indexé, comme si nous l’avions bloqué à travers les robots.fichier txt. Cependant, Étant donné que’s le javascript peignant la réponse sur la page, google ne fait pas’t établir une relation entre cette réponse et le javascript peignant le contenu, donc ça fait exactement ce que nous attendons. Et c’est: pas indexer la réponse partielle et indexer entièrement le HTML généré. Prudent avec cela, car ce comportement peut changer un jour, et tout notre contenu sera également chargé par Ajax si nous appliquons cette technique.
Conclusion
Google peut désormais indexer JavaScript et Ajax, mais il implique inévitablement un Coût plus élevé à l’indexation HTML déjà traitée dans le serveur. Cela signifie que SSR est et continuera d’être la meilleure option pendant un certain temps. Si vous n’avez pas d’autre alternative que de traiter un site Web de RSE, entièrement ou partiellement, vous savez maintenant comment le faire.
