Я создавал свой сайт, когда создавал новый файл cookie с этой линией php:
setcookie('subscribed', 'true', time() + 365*24*3600*100, '/', null, false, true);
Я понял, что мой браузер (Google Chrome) отказался получить этот файл cookie. Когда я посмотрел на свои файлы cookie в Google Chrome, его там не было. Я начал заниматься различными настройками, пока не увидел, что это сработало:
setcookie('subscribed', 'true', time() + 365*24*360, '/', null, false, true);
Это означало, что изменение срока действия до более низкого значения действительно помогло сделать эту работу.
Мой вопрос: какое минимальное время истечения вы можете установить для cookie в Google Chrome? Кто-нибудь знает об этой политике?
Я только что попробовал это на 64-битной ОС с Chrome как браузером и Apache в качестве сервера, и он работает безупречно. Это показывает время истечения срока действия печенья, которое должно быть где-то в 2113 году.
dev-null-dweller , вероятно, прав: любая дата после 03:14:07 UTC во вторник, 19 января 2038 года, обернется примерно до 1900 года, что вынудит печенье немедленно исчезнуть (на 32-битных платформах, то есть).
Обходите это, установив время истечения срока действия cookie не более 10 лет в будущем. Это уже выходит за рамки разумно ожидаемого срока службы любого электронного устройства, которое будет держать его в любом случае.