PHP 세션에선 다음과 같은 상황을 방지하기 위해, 웹페이지의 캐시 설정을 제어할 수 있는데요. 
1. 회원정보 수정 페이지에서 로그아웃. 
2. 뒤로가기시 로그아웃된 상태임에도 불구하고 브라우저의 캐시된 회원정보 수정 페이지가 보여지는 문제. 
이를 해결 하기 위해 세션 페이지는 캐시를 남기지 않도록, `session_cache_limiter('nocache');` 형태의 설정을 사용하죠. 
이때 브라우저의 HTTP header 에는 다음 헤더가 추가됩니다. 
``` 
Expires: Thu, 19 Nov 1981 08:52:00 GMT 
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 
Pragma: no-cache 
``` 
만료일 헤더 값은 현재 날짜보다 이전 날짜로만 지정하면 되는데... 왜 1981년일까요? 
그 비밀은 해당 코드를 작성한 개발자인 Sascha Schumann 의 생일이 1981년 11월 19일 이라고 하네요.  
PHP 에도 이런 재밌는 사실이 숨겨져 있네요. :) 
--- 
# 참고 
http://stackoverflow.com/questions/8194481/why-is-expires-1981 
https://github.com/php/php-src/blob/df845a9155f0dbe7041f66e00f6625fa77c6521d/ext/session/session.c#L1140 
http://php.net/manual/en/function.session-cache-limiter.php 
--- 
# 추가 팁 - Laravel 에서 웹페이지 캐시를 비활성화하는 코드 
https://gist.github.com/ibin79/fe46acfd29571d3b627322430cb2e830
2018/07/25 21:33 2018/07/25 21:33

Trackback Address :: 이 글에는 트랙백을 보낼 수 없습니다