6
votes

Les sites Ajax sont-ils robustes par les moteurs de recherche?

J'avais toujours supposé que le contenu ajax a été invisible pour rechercher des moteurs.

(c'est-à-dire le contenu inséré dans le DOM via XMLHTTPQUEST)

Par exemple, sur ce site, le contenu principal est chargé via une demande Ajax par le navigateur:

http://www.trustedsource.org/query/terra.cl

... si vous voyez cette page avec JavaScript désactivé , la zone de contenu principal est vide.

Cependant, Google Cache affiche le contenu complet après la charge AJAX:

http://74.125.155.132/Search?q=cache:jqcttitevdhboj:www.trustedsource.org/query/terra.cl+http://www .Trustedsource.org / Query / Terra.cl & CD = 1 & HL = EN & CT = CLNK & GL = US

Ainsi, apparemment, les moteurs de recherche font l'index de contenu chargé par Ajax.

questions:

  • Est-ce une nouvelle fonctionnalité dans les moteurs de recherche? Plus Les publications sur le Web indiquent que vous avoir à publier dupliquer HTML statique Contenu des moteurs de recherche à trouver eux.
  • Y a-t-il des astuces pour obtenir un Contenu ajax à ramper par moteurs de recherche (en plus de créer Dupliquer du contenu HTML statique).
  • le contenu ajax sera-t-il indexé s'il est chargé d'un Séparer le sous-domaine? Que diriez-vous d'un Domaine séparé?

2 commentaires

"... Si vous voyez cette page avec JavaScript désactivé, la zone de contenu principale est vide." Non ce n'est pas le cas. Il a l'air assez encombré, en fait.


Quel navigateur utilisez-vous? Lorsque j'accumule le premier lien dans Firefox avec JavaScript désactivé, je vois "Informations sur" Terra.Cl "" puis une boîte vierge. Affichage de la source HTML, je vois une DIV vide avec ID = Contenu de requête, où le contenu Ajax irait.


7 Réponses :


0
votes

Contenu qui est chargé immédiatement (par exemple avec une requête HTTP secondaire comme dans votre exemple une fois que le pageload initial) est généralement visible au robotteur de moteur de recherche.

Toutefois, si vous avez du contenu qui au-delà de cela est chargé via AJAX après une action de l'utilisateur, par ex. En cliquant sur un onglet ou un bouton, etc., ne sera ni vu ni indexé. Ceux-ci ne seront vus ou indexés que si elles ont des liens d'ancrage «réels».


2 commentaires

Alex, pouvez-vous fournir des preuves que Google exécutera des demandes Ajax sur les pages où les requêtes AJAX sont exécutées lorsque la page se charge?


@Josh, non, parce que ce n'est pas vrai. :)



1
votes

ajax-piloté ne sont pas rampés par les moteurs de recherche (ou au moins, pas par Google).

La raison pour laquelle vous pouvez voir la page dans le cache Google est parce que dans le cache, il y a la page complète, y compris le fichier .js. Ainsi, lorsque vous voyez la page, votre navigateur utilise le fichier .js en cache Google.

Je ne pense pas qu'il y ait une astuce pour le rendre rampé par le moteur de recherche, sauf en utilisant une statique .html.

Edit au 27 avril 2010: Google a publié un moyen de faire Ajax robuste

Google Webmaster Toolkit pourrait aider.


1 commentaires

Je ne pense pas que cela soit vrai. Si j'appuie le lien de cache Google avec JavaScript désactivé, je vois toujours le contenu ajax. Si je visionne la source, le contenu est là dans le HTML.



1
votes

Les moteurs de recherche peuvent exécuter le JavaScript nécessaire pour indexer le contenu Ajax, mais ce serait difficile et coûteux en calcul - je ne suis au courant d'aucun que ce soit.

Un site bien écrit sera, s'il utilise ajax, utilisez-le selon les principes de Amélioration progressive . Toute fonctionnalité clé sera toujours disponible sans avoir à exécuter le JavaScript.

D'autre part, des sites qui réinventent des cadres (et n'utilisent pas une amélioration progressive) à l'aide de JavaScript souffriront de tous les problèmes habituels des cadres, mais des pages d'orpheline commerciales pour l'invisibilité du moteur de recherche.


1 commentaires

Droit pour l'amélioration progressive.



1
votes

J'ai installé et actif Noscript. Les deux liens montrent le même contenu (+/- la barre d'en-tête Google). Par conséquent, le cache de Google ne montre que ce qui est statique là-bas.


1 commentaires

Je reçois des résultats différents que vous. J'ai installé Noscript. La page d'origine ne montre pas le contenu principal, la page Google-Cachée le montre. Si je vue Source, je vois différents contenus à l'intérieur de la DIV avec ID = Contenu de la requête. (Ceci est le DIV où le contenu AJAX est injecté) Pouvez-vous essayer IE?



1
votes

Si vous utilisez quelque chose comme des onglets JQuery, même si vous vous connectez aux fichiers HTML dans le même répertoire, il se dégrade bien à la normale sans le JavaScript, et les onglets deviennent simplement goûts aux pages réelles. C'est moche, mais ça marche. Vous pouvez également styler ces versions aussi.


1 commentaires

Eh bien, oui, tout contenu Ajax que vous chargez devrait avoir une bonne réchauffe élégante afin que les moteurs de recherche et les personnes atteintes de vieux / JavaScript désactive les navigateurs ont quelque chose à regarder.



3
votes

Suite à ce guide de Google, les sites AJAX peuvent être fabriqués:

http://code.google .COM / INTL / SV-SE / Web / AJAXCRAWLING / DOCS / GET-DÉMARCHE.HTML


0 commentaires

0
votes

Google vient de faire connaître leurs robots javascript sans changement de développeur!

http://googlewebmastercentral.blogspot.com/ 2015/10 / déprécation-Notre-Ajax-Crawling-Scheme.html

Ils indiquent:

Aujourd'hui, tant que vous ne bloquez pas GoogleBot de ramper vos fichiers JavaScript ou CSS, nous sommes généralement en mesure de rendre et de comprendre vos pages Web telles que les navigateurs modernes.


0 commentaires