Мы пытаемся написать систему отслеживания партнеров.
Пользователи нажимают на ссылку на скрипт PHP на сервере A, который помещает некоторые файлы cookie с информацией об отслеживании.Затем скрипт перенаправляет их на целевую страницу на сервере B. Как только пользователь попадает на целевую страницу, загружается javascript, сгенерированный кодом PHP, с использованием ранее установленных файлов cookie.
Все это прекрасно работает в Safari, FFи IE9.
У нас была проблема в IE8, когда php, который генерирует javascript, получал только те файлы cookie, которые были отправлены обратно, которые были установлены без использования каких-либо параметров, кроме name
и value
.Файлы cookie, срок действия которых истек, не были отправлены обратно.Это мы в конечном итоге исправили, установив путь к cookie-файлам /
, даже если оба сценария php (установщик и получатель) находятся в одном и том же пути.Но это исправление работало только для IE8, у нас все еще есть та же проблема с IE6 и IE7.
Кроме того, если мы вызываем скрипт getter напрямую (а не из тега script на сервере B), тогда все работает как положено.
Также мы попытались установить для параметров конфиденциальности IE самые низкие значения.
Пример того, как мы устанавливаем файлы cookie
<?PHP
setcookie($key,$val);//this works
//this doesn't
setcookie('COOKIE', json_encode($info), time()+259200000);