#を使用せずにGoogleでAJAXページをクロールする方法 URL?


13

「AJAXアプリケーションをクロール可能にする」という Googleのアドバイスで<meta name="fragment" content="!">は、ページに追加することにより、ハッシュバンフラグメント(#!)をクロール可能にしないAJAX URLを作成するようアドバイスしています<head>

誰かがこれで成功しましたか?ウェブマスターツールで「Fetch as Googlebot」を使用しているときに、GooglebotがページのHTMLスナップショットを取得するのを見つけることができません。


SOの方がうまくいくと思います。
蘇」

面白い。おそらくグーグルはフラグメントのスナップショットを取りません。フラグメントURLはインデックス化されていますか?
SteveS

回答:



4

AJAXコンテンツのクロールを許可することに関する前のセクションで、Googleは次のように述べています


3.ハッシュフラグメントのないページの処理

一部のページにはハッシュフラグメントがない場合があります。たとえば、ホームページをwww.example.comでなくにしたい場合がありますwww.example.com#!home。このため、ハッシュフラグメントのないページには特別な規定があります。

注:このオプションは、Ajaxで作成された動的なコンテンツを含むページにのみ使用してください。静的コンテンツのみを含むページの場合、クローラーに余分な情報は提供されませんが、Googleサーバーに余分な負荷がかかります。

ハッシュフラグメントのないページをクロール可能にするには、ページのHTMLの先頭に特別なメタタグを含めます。

メタタグの形式は次のとおりです。

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

これは、このURLのいバージョンをクロールする必要があることをクローラーに示します。上記の合意に従って、クローラーは一時的にpretty URLを対応するcorrespondingいURLにマップします。つまり、ページwww.example.comに配置すると、クローラーはこのURLを一時的にマップwww.example.com?_escaped_fragment_=し、サーバーに要求します。サーバーは、に対応するHTMLスナップショットを返しますwww.example.com。このメタタグには1つの重要な制限が適用されることに注意してください。有効なコンテンツは「!」のみです。つまり、メタタグは常に正確な形式を取ります<meta name="fragment" content="!">。これは、空のハッシュフラグメントを示しますが、AJAXコンテンツを含むページを示します。


したがって、?_escaped_fragment_=ヘッドレスブラウザーの使用を含む「ugい」バージョンへのURLのマッピングを有効にする必要があります。

彼らは警告でフォローアップします:

www.example.com?_escaped_fragment_=コンテンツが404コードを返す場合、コンテンツのインデックスは作成されませんwww.example.com

そのため、同様にテストする必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.