web-dev-qa-db-ja.com

検索エンジン専用のサーバー側レンダリング(SEO)

大量のJavaScriptベースのWebアプリがあり、それらをインデックスに登録したいと考えています。

Googleボットや他のエージェントが既にJavaScriptを認識できることは知っていますが、彼らが私のコンテンツを正しくキャプチャするとは信じていません。非同期JavaScriptの問題はさらに大きくなります。例:ユーザーが下にスクロールしたときにのみロードされるセクションがあります。 Facebookのクローラーのように、JavaScriptを表示できないクローラーもあります。

Phantomjsまたは他のヘッドレスブラウザを使用して、事前にレンダリングされたHTMLをGoogleボットに送信できますか?これはまさにエンドユーザーが見るものですが、私の恐れは、ボットに異なるコンテンツを提供することで罰則を受ける可能性があることです。

4
lucaswxp

Phantomjsまたは他のヘッドレスブラウザを使用して、事前にレンダリングされたHTMLをGoogleボットに送信できますか?

一言で言えば...いいえ。訪問者と検索ボットの異なるバージョンに対するGoogleのスタンスは明確であり、意図に関係なく、マントとして分類されます。また、Googleは、他のWebサイト訪問者とは異なる方法でGooglebotを特に扱うサイトを探すために、活動を徹底しています。

すべてのサイトは、Googlebotとユーザーの両方で同じようにレンダリングする必要があります

JavaScriptに関係なく、すべてのサイトは、ユーザーと検索エンジンの両方で同じようにレンダリングする必要があります。そうでない場合、サイトに何か問題があります。

Googlebotが見るものをエミュレートしています...

Google's Fetch Test をGoogle検索コンソールで使用すると、サイトにアクセスしたときにGooglebotが表示するものをエミュレートしてレンダリングできます。その結果、サイトをデバッグし、検索ボットとユーザー。

7
Simon Hayter