6

クエリ文字列パラメーターの特定の値に対して、アプリケーションへの 301 リダイレクトを設定しようとしています。

例えば:

  • http://www.example.com/page?id=1→ 新しいページにリダイレクト
  • http://www.example.com/page?id=2→ 通常の反応をする

ブラウザはどのようにリダイレクトをキャッシュしますか?

具体的には、最初の URL にアクセスした後、一部のブラウザは に対して 301 リダイレクトを実行し始めますid=2か、それともリダイレクトは完全な URL に基づいていますか?

4

1 に答える 1

6

301 リダイレクトは永続的なリダイレクトであるため、ブラウザは確実にキャッシュします。基本的に、元の URL を決して見ないようにブラウザーに指示し、自動的に 2 番目の URL に移動します。どの検索エンジンでも同じことが起こります。元の URL を再度使用する予定がある場合は、必ず一時的なリダイレクトを使用してください。

具体的には、最初の URL にアクセスした後、一部のブラウザーは id=2 に対して 301 リダイレクトの実行を開始しますか? それとも完全な URL に基づくリダイレ​​クトですか?

いいえ、ブラウザは各 URI を全体として見る必要page?id=1があるため、URL が異なるためPage1?Id=2、301 リダイレクトは最初の URL にのみ適用されます。

ブラウザはリダイレクトを実行し、HTTP 仕様の解釈に基づいて独自のルールを実装していることに注意してください。ブラウザにバグがある場合、予測できない結果が生じる可能性がありますが、簡単に言えば、それらは異なる URL への異なるリクエストであり、それぞれが独自の HTTP ステータス コードを取得するため、別のページとして扱うことができます。

于 2014-03-28T18:45:02.487 に答える