0

重複の可能性:
Facebook のシバン/ハッシュバン (#!) と新しい Twitter URL は何ですか?

ページの読み込みに Ajax リクエストを使用するいくつかの Web ベースのアプリケーションで#!#. 例:/boo.php#!Projectsの代わりに/boo.php#Projects.

知りたいのですが、そのようにする技術的な理由はありますか?

4

3 に答える 3

1

これは、hashbang/shebang ( #!) が AJAX ページをインデックス化するための Google のスキームであるためです。

サイトがスキームを採用すると、「AJAX クロール可能」と見なされます。これは、サイトが HTML スナップショットを提供している場合、クローラーがアプリのコンテンツを見ることを意味します。

詳細については、Google Developersをご覧ください。

于 2012-11-03T08:00:11.980 に答える
1

これを「ハッシュバン」と呼びます。これは、Ajax ベースの Web サイトをインデックス化するために Google によって使用されます。詳細情報 - http://www.fakingfantastic.com/2011/02/09/using-hash-bangs-in-your-urls/

于 2012-11-03T08:01:48.297 に答える
1

その意図は、例えば Google が AJAX ページをクロールできるようにすることです。

通常、URL のハッシュの背後にあるものはすべてクローラーにとって無関係であり、サーバーにはまったく送信されません。AJAX アプリケーションでは、ブラウザのアドレス バーで実際の URL を「シミュレート」するために頻繁に使用されていました (現在は一般的に を使用していますhistory.pushState)。

完全な JavaScript アプリケーションを実行できないという制限を回避するために、Google は基本的に次のようなハッシュバンを含む URL に遭遇した場合に、

http://example.com/foo#!key=value

それはそれをに変換することができます

http://example.com/foo?_escaped_fragment_=key=value

そしてそれをサーバーに送信します。次に、サーバーは、JavaScript アプリで表示されるページの表現を返すことが期待されます。結局のところ、これらのアプリをクロール可能にするのは慣例にすぎません。

詳細については、Google によるトピックに関するドキュメントを参照してください。

于 2012-11-03T08:07:48.940 に答える