Firefox のセッション共有の問題

Firefox のセッション共有の問題

Firefox (3.6.18) は、アプリケーションが複数のタブで開かれるとセッションを共有します。これを防ぎたいので、開かれたタブごとに新しいセッションを作成して、セッション内のデータ状態が破損しないようにする必要があります。

この点に関してご協力いただければ幸いです。

答え1

Firefox や、あなたが言及したバージョンでも問題はありません。ブラウザがセッション クッキーを追跡する方法についてのあなたの理解は、少し不完全だと思います。ブラウザは常に、クッキーを発行したサーバー ドメインのクッキーとともに、サーバーにリクエストを送信します。これは、クッキーを発行したブラウザ タブとは関係ありません。

セッション クッキーをタブ間で使用したくない場合は、サーバーがクライアントにレンダリングするすべてのページを区別するために、ページ固有の識別子を設定できます。対応するタブがリクエストを返すときは、サーバーがタブ間で発行されたリクエストを区別できるように、ページ固有の識別子も送信する必要があります。ユーザーがこのページ固有の識別子を持つリンクをあるタブから別のタブにコピーした場合、これは役に立ちません。

ページ固有の識別子を使用して続行する場合は、ページ識別子の受信リクエスト パラメータを解析するだけです。存在しない場合は、PRNG を使用して生成し、このページ識別子を含む応答をページに送信できます (たとえば、フォーム内の隠しフィールドとして、または URL 内など。ただし、Cookie としては送信しません)。


注: ブラウザ固有の機能をお探しの場合、Firefox 3 および 4 には、ユーザーがブラウザ ウィンドウ間で新しいセッションを作成できる IE9 の「新しいセッション」機能がありません。また、サーバーがユーザーを追跡するために永続的な Cookie を使用している場合、IE9 の「新しいセッション」機能は動作しないようです。

答え2

あなたはできません

URLを書き換えて各URLにjSessionIdを追加し、手動で追跡することもできますが、これは物事を実行する方法ではありません。

関連情報