My CRON Job returned an error that CRON job did not work. In that this was there:
Set-Cookie: PHPSESSID=2t2drultihqci4em15nbfmeb63; path=/
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
Content-type: text/html
I am wondering why is Expires
set to "1981". What is the significance?
It's an attempt to disable caching.
The date is the birthday of the developer Sascha Schumann who added the code.
From session.c:
Authors: Sascha Schumann <sascha@schumann.cx>
Andrei Zmievski <andrei@php.net>
// ...
CACHE_LIMITER_FUNC(private)
{
ADD_HEADER("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
CACHE_LIMITER(private_no_expire)(TSRMLS_C);
}
HTTP Expires header
http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html
It is set to negative or past value, to prevent caching of response.
Quite common usage of this header.
I think you are using session_cache_limiter
before calling session_start
. If argument is private
or no-cache
the result is setting the Expires
header to the time you have mentioned. Refer to this document for more information.
Somebody just put expires = date('-30 years')
(paraphrased) in his code to make really sure the content is set as expired and not cached.
来源:https://stackoverflow.com/questions/8194481/why-is-expires-1981