programing

캐시에서 페이지를 표시하는 브라우저의 뒤로 버튼?

goodsources 2023. 3. 22. 21:08
반응형

캐시에서 페이지를 표시하는 브라우저의 뒤로 버튼?

워드프레스 웹사이트에서 로그아웃하면 로그인 페이지로 리다이렉트 됩니다.하지만 문제는 브라우저의 뒤로 버튼을 누르면 승인이 필요한 이전 페이지가 표시됩니다.브라우저 캐시에서 페이지가 로드되고 서버와의 상호 작용이 발생하지 않는 것을 알고 있습니다.그러나 사용자가 브라우저의 뒤로 버튼을 누르면 강제로 페이지를 새로고침해야 합니다.

헤더를 확인해보니 다음과 같습니다.

Cache-Control:  no-cache, must-revalidate, max-age=0

아래의 메타태그도 추가해 봤지만 잘 되지 않았습니다.

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">

제발 도와주세요.

아래와 같이 헤더를 설정해 보았습니다만, 매우 효과가 있었습니다!

header("Cache-Control: private, must-revalidate,
        max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0"
      );

많은 솔루션을 시도했지만 아래 솔루션만 해결되었습니다.로그아웃 페이지의 자바 스크립트 아래에 추가되었습니다.다른 모든 솔루션은 IE 이외의 브라우저에서는 정상적으로 동작합니다.

window.onunload = function() {
    window.location.href = "<%=request.getContextPath()%>/logout.jsp";
};

언급URL : https://stackoverflow.com/questions/20088616/browser-back-button-showing-the-page-from-cache

반응형