"문서 만료"메시지를 방지하고 만료 된 페이지 만 표시 하시겠습니까?


13

양식을 제출하고 다시 누르면 마지막 페이지 대신 "문서 만료"메시지가 표시되는 경우가 있습니다.

enter image description here

대신 다음과 같은 성가신 메시지 상자를 사용했습니다 ( "다시 시도"를 클릭하면 나타납니다).

enter image description here

지금 해야 할 것 이것이 의미하는 바가 무엇인지, Firefox가이 메시지를 표시하는 이유를 알아야합니다. 그러나 나는 그냥 마지막으로 본 페이지를보고 싶습니다. 팝업이없고 서버의 새 상태를 반영하기 위해 다시로드하지 않습니다. (어쩌면 약간의 정보 표시 줄이 좋을지 모르지만 그것은 필자에게 꼭 필요한 것은 아닙니다.)

유스 케이스 : 정기적으로 사용하는 사이트에 로그인 한 후 Enter 키를 누르면 로그인 페이지에 내 눈이 보이는 뉴스 헤드 라인이 보입니다. 뒤로를 클릭하여 헤드 라인을 클릭하기 위해 잠시 본 정확한 페이지를보고 싶습니다. 로그인 한 첫 페이지를 보거나 방금 다시로드하면 다른 (임의의) 헤드 라인이 표시 될 수 있습니다.

그렇다면 "문서 만료"및 "확인"메시지를 완전히 없애고 Firefox가 POST 양식을 제출 한 후 캐시 된 마지막 위치를 단순히 표시하도록하려면 어떻게합니까? about:config 설정, 확장 프로그램, 프록시 트릭 모두 괜찮습니다.


3
캐시되지 않은 문서의 캐시 항목을 표시하는 방법을 묻는 중입니다. 그것은 불가능합니다.
paa

3
글쎄, 확장자에 따라 Firefox에 문서를 캐시하는 방법을 묻고 있습니다 :-).
jdm

1
내가하려고하는 모든 일이 인터넷 사용 기록을 통해 어딘가에 도착할 때 많이 발생합니다. 전에 문제가 발생했습니다. 이 장애물을 지나쳐야 할 것이 있다면 매우 유용 할 것입니다. 기본 툴바에서 History 단추를 사용할 수는 있지만 선택해야 할 항목을 파악하기는 어렵습니다.
Joe

@jdm 당신은 1) 내가 이전에 본 것과 같은 방식으로 멀리 탐색 한 페이지를 표시하는 방법을 묻고 있습니다; 2) 및 브라우저의 확인 상자를 제거하여 데이터를 다시 보내는 방법 나는 그것을 분명히 이해 했는가?
laika

@sjrco : 1) 네,하지만 아닙니다 2). 나는 뒤로 물러나서 그곳에 있었던 것을보고 (동일한 페이지 상태), 내가 떠나기 전에 볼 수 있기를 원합니다. (js에 의해 수정되었거나 사용자가 양식을 채웠지 만 일부 페이지에서는 작동하므로 브라우저는 수정 된 문서를 저장해야합니다. 약간 상황). 브라우저가 자동으로 데이터를 다시 보내지 않도록하고 싶습니다. 그래도 데이터를 다시 보내지 않으면 모달 대화 상자를 표시하지 않으려합니다.
jdm

답변:


2

파이어 폭스 엔진은 문서의 마지막 상태를 캐시하지 않는다. 서버가 캐싱을 허용하면 HTML 문서 만 캐시한다. 오페라는이 기능이 있었지만 (또는 여전히있을 수는 있지만) 웹 사이트 운영자에게 많은 보안 문제를 일으켰습니다.

RFC 2616에서는 다음과 같이 설명합니다.

13.4 응답 캐시 가능성

캐시 제어 (14.9 절) 지시자에 의해 특별히 제한되지 않는 한, 캐싱 시스템은 항상 성공적인 응답 (13.8 절 참조)을 캐시 엔트리로 저장할 수 있고, 새로운 것이면 유효성 검사없이 반환 할 수 있고, 유효성 검사 후에 반환 할 수있다. .

오늘날 많은 사이트에서 캐싱 문제를 피하기 위해 서버가 생성 한 모든 응답에 대해 캐시 제어 헤더를 사용합니다. 어쨌든 Firefox가 이전 상태의 문서를 제공하더라도 대부분의 사이트에서 작동하지 않거나 작동하지 않아야합니다. 가장 안전하고 미래 지향적 인 해결책은 웹 사이트 소유자에게 웹 사이트를 올바르게 코딩하도록 요청하는 것입니다.


1
하지만 적어도 일부 상황에서는 마지막 상태를 캐시합니다. 이 시도: gist.github.com/jdmansour/5578079 . 최소한 DOM은 보존됩니다.
jdm

1
역사와 캐시는 같은 것이 아닙니다. 13.13 절 참조 동일한 RFC . 뒤로 단추는 캐시 항목이 아닌 기록 항목의 다시 표시를 요청합니다. 오페라가 옳다. Firefox가 잘못되었습니다. 이것이 "보안"기능이라고 주장하는 사람은 모두 어리 석다. "새 탭에서 열기"를 항상 사용할 수 있습니다. 그런 다음 새 탭을 닫아 서버가 이전 페이지를 보았으므로 이전 페이지를 볼 수 있습니다. 정상적으로 작동하는 뒤로 버튼은 그 효과가 있어야합니다.
Wumpus Q. Wumbley

2

대답은에 있습니다. https://support.mozilla.org/fr/questions/1010942 : 도구 - & gt; 옵션 - & gt; 자동 캐시 관리 무시를 선택하십시오.


이거 야! 설정은 도구 / 옵션 / 고급 / 네트워크 / 자동 캐시 관리 덮어 쓰기 아래에 있습니다. "Document Expired"의 모든 경우에 작동하는지는 확실치 않지만, POST 응답의 소스를 볼 수 없었던 곳에서 작동했습니다.
RomanSt

캐시 크기 만 설정할 수 있으므로이 문제에 영향을 미치지 않습니다. support.mozilla.org/en-US/questions/1037647 이게 도움이된다면 자동으로 결정된 캐시 크기가 뭔지 궁금해.
Nickolay

0

이 모든 메시지를 제거하려면 다음 스크립트를 모든 스크립트 시작 부분에 추가하십시오.

헤더 ( "Expires : Sat, 2000 년 1 월 1 일 00:00:00 GMT"); 헤더 ( "Last-Modified :".gmdate ( "D, dMYH : i : s"). "GMT"); 헤더 ( "캐시 제어 : 사후 검사 = 0, 사전 검사 = 0", 거짓); session_cache_limiter ( "must-revalidate");


2
@jdm이 그들이 말하는 페이지를 제어 할 수 있는지 잘 모르겠습니다.
Valmiky Arquissandas
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.