Несоответствия истечения срока действия файлов cookie в браузере - PullRequest
1 голос
/ 21 сентября 2011

Я ищу способ установить файлы cookie с коротким сроком действия для всех браузеров. Очевидно, каждый браузер по-разному обрабатывает метод PHP setcookie. Ниже приведены мои результаты.

Код PHP:

setcookie("TestCookie", $value, time()+7200, "/", ".domain.com", 1, true);

Результаты:

ОПЕРА 11.10

Local time of test: 1316621628
PHP Server Time: Wed Sep 21 07:58:35 PDT 2011
Cookie Expiration Time: 2011-09-21 - 20:58:35

Chrome 6.0.472.63

Local time of test - 1316621761
PHP Server Time - Wed Sep 21 08:01:21 PDT 2011
Cookie Expiration Time - Wednesday, September 21, 2011 9:01:21 PM

Firefox 4

Local time of test: 1316622064
PHP Server Time: Wed Sep 21 08:07:38 PDT 2011
CookieExpiration Time: Wednesday, September 21, 2011 10:22:50 PM

Safari 3.2.3

Local time of test: 1316622359
PHP Server Time: Wed Sep 21 08:10:48 PDT 2011
CookieExpiration Time: 9/21/11 5:10 PM

Internet Explorer 8

Local time of test: 1316623009
PHP Server Time: Wed Sep 21 08:21:37 PDT 2011

Cookie Data: 
TestCookie
x
domain.com/
9728
3932016640
30177410
2837190416
30177404

Как вы можете видеть, дата / время истечения срока действия файлов cookie сильно варьируется: от запланированного времени работы до нескольких часов в прошлом и до одного часа! Очень расстраивает.

В дополнение к попытке описанного выше метода, я также попытался установить точную дату / время истечения срока с помощью unixtime ... Я сделал это с помощью time () на уровне PHP или с использованием браузера unixtime, полученного через JavaScript.

setcookie("TestCookie", $value, 1316621928, "/", ".domain.com", 1, true);

Каждый браузер обрабатывает это также по-своему. Я не могу найти один метод, который работает одинаково для всех браузеров. Кто-нибудь знает о методе, который выполняет это?

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...