web-dev-qa-db-ja.com

なぜ「Expires」は1981なのですか?

CRONジョブで、CRONジョブが機能しないというエラーが返されました。これはそこにありました:

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

なぜExpiresが「1981」に設定されているのかと思います。意味は何ですか?

40
footy

キャッシングを無効にする試みです。

日付は、コードを追加した開発者 Sascha Schumann の誕生日です。

Session.cから:

Authors: Sascha Schumann <[email protected]> 
         Andrei Zmievski <[email protected]> 

// ...

CACHE_LIMITER_FUNC(private)
{
    ADD_HEADER("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
    CACHE_LIMITER(private_no_expire)(TSRMLS_C);
}
89
Mark Byers

HTTP Expiresヘッダー

http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html

応答のキャッシュを防ぐために、負または過去の値に設定されています。

このヘッダーのかなり一般的な使用法。

8
Marek Sebera

session_cache_limiterを呼び出す前にsession_startを使用していると思います。引数がprivateまたはno-cacheの場合、結果はExpiresヘッダーを指定した時刻に設定します。詳細は this ドキュメントを参照してください。

6
Ashwini Dhekane

誰かがコードにexpires = date('-30 years')(言い換え)を入れて、コンテンツが期限切れでキャッシュされないように設定されていることを確認します。

2
deceze