URL 形式http://www.example.com/module/contentを持つ Web ページを作成しました。 これは非常に動的な Web ページであり、実際には Web アプリケーションです。
可能な限りレスポンシブにするために、通常のページ要求の代わりに AJAX を使用したいと考えています。これにより、JavaScript を使用してレイヤーを追加し、オフライン機能を提供することもできます。
私の質問は次のとおりです。URL はどのように作成すればよいですか? それらはhttp://www.example.com/module/contentまたはhttp://www.example.com/#!/module/contentである必要がありますか?
以下は、両方向の私の考えです。これについてすでに明確な考えがある場合は、読む必要はありません。
新しい HTML5 標準に対応したいので、最初のバージョンを使用したいと考えています。使いやすく、URL も見栄えがします。しかし、もっと重要なことは、これを行うことができるということです:
ユーザーがページを要求すると、完全な HTML ページが返されます。
ユーザーがリンクをクリックすると、コンテンツのみが AJAX 経由でコンテナー div に挿入されます。
これにより、JavaScript を使用していないユーザーが私の Web サイトを使用できるようになります。JavaScript を使用する必要がないため、単純に古い「リンクをクリックしてリクエストし、HTML ページ全体を取得する」アプローチを使用するだけです。
これは素晴らしいことですが、問題はもちろん Internet Explorer にあります。IE の最新バージョンのみが履歴 API をサポートしており、これを古いバージョンで機能させるには、ハッシュタグを使用する必要があります。(私のユーザーの 50% は IE を使用することになるので、サポートする必要があります...) そのため、/#!/ を使用して動作させる必要があります。
これらの両方の URL バージョンを使用すると、IE ユーザーがこのリンクを Web サイトに投稿すると、Google がサーバーに _unescaped_string (または類似の文字列) を送信するという問題が発生します。ハッシュタグ。また、一部のページにはハッシュタグがありません。
そして、私たちが覚えているように、非ハッシュタグは多くの異なる点で優れています. では、この検索エンジンの問題は回避できるのでしょうか? ウェブサイトのハッシュタグ バージョンに到達している場合、ウェブページの非ハッシュタグ バージョンにリダイレクトする必要があることを GoogleBot に伝えることは可能ですか? このようにして、非ハッシュタグ URL の利点をすべて享受しながら、IE6-IE9 をサポートすることができます。
最善のアプローチは何だと思いますか? 多分あなたは実際にそれを自分で試しましたか?ご回答有難うございます!