ログインするときにログインの状態を保持するチェックボックスがあると思います。以前開発したシステムで急にそのログイン状態を保持するのが利かなくなったと連絡があり調査したところ、原因は2038年問題でした。

ログインするときにログインを保持するにチェックがあると
session_set_cookie_params(60*60*24*365*30);
として30年後を指定していました。

しかし、2038年問題 – Wikipedia にあるように2038年1月19日 3時14分7秒でオーバーフローしてしまうため、クッキーの有効期限が0を指定したときと同じ扱いになってしまいました。

Firefox のオプションで Cookie の有効期限を毎回確認するにして確認すると、その時点で既にブラウザを閉じるまでになっていました。

2038年問題は知っていましたが気がつくのが遅く、しばらく気がつきませんでした。

クッキーの有効期限を見ると Google でもいくつか2038年のものがありますね。気をつけてください。

関連する投稿