Wie Sie Google dazu bringen, AJAX-Seiten zu crawlen, ohne # zu verwenden! URLs?

13

In den Hinweisen von Google zum "Crawlen von AJAX-Anwendungen" wird empfohlen , AJAX-URLs, die keine Hash-Bang-Fragmente (#!) Verwenden, durch Hinzufügen <meta name="fragment" content="!">zur Seite crawlen zu lassen <head>.

Hat jemand Erfolg damit gehabt? Ich kann nicht feststellen, dass Googlebot HTML-Schnappschüsse von den Seiten erstellt, wenn ich in den Webmaster-Tools "Als Googlebot abrufen" verwende.

Yoga
quelle
Ich denke, das könnte bei SO besser laufen.
Su‘
interessant. Vielleicht macht Google keine Schnappschüsse von Fragmenten. Sind die Fragment-URLs indiziert?
SteveS

Antworten:

4

In den vorhergehenden Abschnitten zum Ermöglichen des Crawls von AJAX-Inhalten führt Google Folgendes aus :


3.Handhaben Sie Seiten ohne Hash-Fragmente

Einige Ihrer Seiten enthalten möglicherweise keine Hash-Fragmente. Beispielsweise möchten Sie möglicherweise, dass Ihre Homepage www.example.comstatt www.example.com#!home. Aus diesem Grund haben wir eine spezielle Bestimmung für Seiten ohne Hash-Fragmente.

Hinweis: Stellen Sie sicher, dass Sie diese Option nur für Seiten verwenden, die dynamischen, von Ajax erstellten Inhalt enthalten. Bei Seiten, die nur statischen Inhalt enthalten, werden dem Crawler keine zusätzlichen Informationen zur Verfügung gestellt, die Server von Ihnen und Google werden jedoch zusätzlich belastet.

Um Seiten ohne Hash-Fragmente crawlen zu können, fügen Sie ein spezielles Meta-Tag in den Kopf des HTML-Codes Ihrer Seite ein.

Das Meta-Tag hat die folgende Form:

<meta name="fragment" content="!">

Dies gibt dem Crawler an, dass er die hässliche Version dieser URL crawlen soll. Gemäß der obigen Vereinbarung ordnet der Crawler die hübsche URL vorübergehend der entsprechenden hässlichen URL zu. Mit anderen Worten, wenn Sie die Seite www.example.com aufrufen, ordnet der Crawler diese URL vorübergehend www.example.com?_escaped_fragment_=Ihrem Server zu und fordert sie von diesem an. Ihr Server sollte dann den entsprechenden HTML-Snapshot zurückgeben www.example.com. Bitte beachten Sie, dass für dieses Meta-Tag eine wichtige Einschränkung gilt: Der einzig gültige Inhalt ist "!". Mit anderen Worten, das Meta-Tag hat immer die exakte Form <meta name="fragment" content="!">:, die ein leeres Hash-Fragment, aber eine Seite mit AJAX-Inhalt angibt.


Daher müssen Sie die Zuordnung der URL zu der "hässlichen" Version, die die URL enthält, ?_escaped_fragment_=mithilfe des Headless-Browsers weiterhin aktivieren .

Sie folgen mit der Warnung:

Sollte der Inhalt www.example.com?_escaped_fragment_=einen 404-Code zurückgeben, wird kein Inhalt für indiziert www.example.com!

Also solltest du das auch testen.

Mike Hudson
quelle