2013-06-18 3 views
22

Google sagt über diesen Meta-Tag:Enthält <meta name = "fragment" content = "!"> Schädlich für Seiten mit Hashbang?

folgende wichtige Einschränkungen gelten:

  1. Der Meta-Tag nur in Seiten ohne Hash-Fragmente erscheinen.
  2. Nur "!" kann im Inhaltsfeld erscheinen.
  3. Das Meta-Tag muss im Kopf des Dokuments erscheinen.

Quelle: https://developers.google.com/webmasters/ajax-crawling/docs/specification?hl=fr-FR

Ich bin mir bewusst, dass es nur für Seiten benötigt wird, die nicht ein Hash-Bang enthalten tun, aber noch sollte mit einem Snapshot serviert werden. Aber das ist normalerweise nur die Startseite.

Sagen wir, wir haben:

www.foo.com

www.foo.com/#!/jobs

Die zweite geholt werden als:

www.foo.com?_escaped_fragment_=/jobs

nur wegen des hashban G.

Aber die Root-Seite hat keinen Hashbang, so dass es dieses spezielle Meta-Tag im Kopf haben muss.

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

Aber da alle meine einzigen Seite Anwendung verwendet die gleiche <head> so weit ich frage mich, ob es tatsächlich schädlich ist in das Meta-Tag zu halten, für alle anderen Seiten, die enthalten eine Hash-Bang tun.

Was wird tatsächlich passieren?

+12

Etwas geben können, ist entweder falsch mit mir oder mit SO. Ich sehe in der letzten Zeit eine Menge Fragen, die für mich absolut gültig sind. Bitte geben Sie zumindest weitere Informationen darüber an, was mit der Frage falsch ist, wenn Sie sie schließen. – Christoph

Antwort

4

Ist es nicht nur ein Opt-In, was bedeutet, dass es redundant (nicht schädlich) ist, es auf Seiten mit Hashbangs zu verwenden ?! Nach meinem Verständnis sucht der Crawler automatisch nach der _escaped_fragment_-Seite, wenn er im URI einen Hashbang erkennt. Nur wenn im URI kein Hashbang vorhanden ist, können Sie dem Crawler raten, den _escaped_fragment_-Parameter mithilfe des Meta-Tags anzufügen. Auf diese Weise können Sie verschiedene Inhalte bereitstellen, wenn der Parameter festgelegt ist. So funktionieren einige Blogspot-Themen (z. B. http://illegalcartoon.blogspot.de/).

Haben Sie Ihre Frage richtig beantwortet?

+0

Genau das habe ich mir auch gedacht. Es ist nur die Formulierung in diesem Google-Papier, die mich ein wenig erschreckt: https://developers.google.com/webmasters/ajax-crawling/docs/specification?hl=fr-FR "Das Meta-Tag möglicherweise nur angezeigt auf Seiten ohne Hash-Fragmente " – Christoph

+2

Okay, dieser Satz ist ein wenig verwirrend. Als Proof of Concept kann ich jedoch den folgenden Link bereitstellen: http://www.google.com/search?q=site:emanuel.kodingen.com/wordpress Dies sind die Crawlergebnisse für die Demo-Seite meiner Backboned-Wordpress-Thema. Alle Seiten enthalten den Hashbang und das Meta-Tag. Trotzdem sind sie vollständig indiziert. Vielleicht ist der Satz ein wenig mehrdeutig und sie wollten eigentlich sagen, dass Sie das gemeinsame Hash-Fragment (www.domain.com # foo) nicht zusammen mit dem Meta-Tag verwenden dürfen!?! o_O –

+0

Und das ist jetzt alles veraltet? http://googlewebmastercentral.blogspot.jp/2015/10/deprecating-our-ajax-crawling-scheme.html – gman

3

auf dieser Erklärung Basierend von google, wenn die Seite <meta name="fragment" content="!">

Um ohne Hash-Fragmente indiziert zu bekommen Seiten hat, sind Sie einen speziellen Meta-Tag im Kopf des HTML-Code Ihrer Seite. Wichtig: Machen Sie sicher, dass Sie diese Lösung nur für Seiten verwenden, die Ajax-Inhalt enthalten. Das Hinzufügen dieser Seite zu Nicht-Ajax-Seiten bringt keinen Nutzen und bringt extra Last auf Ihre Server und Google's.

Dieses Tag gibt dem Crawler an, dass er die hässliche Version dieser URL crawlen soll. Gemäß der obigen Vereinbarung wird der Crawler die hübsche URL vorübergehend der entsprechenden hässlichen URL zuordnen. In anderen Worten, wenn Sie in die Seite www.example.com platzieren, wird der Crawler diese URL vorübergehend auf www.example.com?_escaped_fragment_= abbilden und wird dies von Ihrem Server anfordern. Ihr Server sollte dann den HTML-Snapshot, der entspricht, an www.example.com zurückgeben.

Also, wenn ein Server eine Anfrage wie diese www.example.com?_escaped_fragment_= bekommen Sie ihn wieder ein Schnappschuss ohne name="fragment" content="!"

+0

Ahh - also vielleicht ist hier mein Fehler. Heißt das, wenn der Google-Crawler nach "domain/path? _escaped_frament_ =" fragt, muss das Meta-Tag entfernt werden? Weil ich die Technik mit dem "Meta-Tag" benutze, aber es funktioniert nicht. Der Crawler crawlt nur die normale Version (also nicht den HTML-Snapshot). –

Verwandte Themen