Firefox의 세션 공유 문제

Firefox의 세션 공유 문제

Firefox(3.6.18)는 애플리케이션이 여러 탭에서 열릴 때 세션을 공유합니다. 이를 방지하고 싶습니다. 열린 모든 탭에는 세션의 데이터 상태가 손상되지 않도록 새 세션이 있어야 합니다.

이와 관련하여 어떤 도움이라도 주시면 감사하겠습니다.

답변1

Firefox에는 문제가 없으며 언급한 해당 버전에도 문제가 없습니다. 브라우저가 세션 쿠키를 추적하는 방법에 대한 귀하의 이해가 약간 불완전하다고 생각합니다. 브라우저는 요청을 발행한 서버 도메인에 대한 쿠키와 함께 항상 서버에 요청을 보냅니다. 이는 쿠키를 발행한 브라우저 탭과 관계가 없습니다.

여러 탭에서 세션 쿠키를 사용하지 않으려면 서버에서 클라이언트에 렌더링하는 모든 페이지를 구별하는 페이지별 식별자를 사용할 수 있습니다. 해당 탭이 요청을 다시 보낼 때 서버가 여러 탭에서 발생한 요청을 구별할 수 있도록 페이지별 식별자도 함께 보내야 합니다. 사용자가 이 페이지별 식별자가 포함된 링크를 한 탭에서 다른 탭으로 복사하는 경우 이는 도움이 되지 않습니다.

페이지별 식별자를 계속 사용하려면 페이지 식별자에 대한 수신 요청 매개변수를 구문 분석하기만 하면 됩니다. 존재하지 않는 경우 PRNG를 사용하여 생성하고 페이지에 이 페이지 식별자가 포함된 응답을 보낼 수 있습니다(예: 양식 또는 URL의 숨겨진 필드로 보낼 수 있지만 쿠키로는 보낼 수 없음).


참고: 브라우저 특정 기능을 찾고 있는 경우 Firefox 3 및 4에는 사용자가 브라우저 창에서 새 세션을 생성할 수 있는 IE9의 "새 세션" 기능이 없습니다. 또한 서버가 영구 쿠키를 사용하여 사용자를 추적하는 경우 IE9의 "새 세션" 기능이 작동하지 않는 것 같습니다.

답변2

당신은 할 수 없습니다,

URL을 다시 작성하고 각 URL에 jSessionId를 추가하고 직접 추적할 수 있습니다. 하지만 그건 일을 하는 방식이 아니야

관련 정보