У меня странная ошибка, которая возникает в IE7 / XP и IE8 / Vista на моем сайте. IE отправляет два куки с именем PHPSESSID.
Как воспроизвести:
Очистить куки в IE (не обязательно, если вы никогда не посещали unisender.com).
Посетите unisender.com (точно без www для воспроизведения!), И он будет перенаправлен на www.unisender.com
Войдите под любым действительным именем пользователя и паролем (я зарегистрировал имя пользователя testmsdn с паролем testmsdn - не стесняйтесь использовать для тестирования)
Запустите вашу любимую программу захвата трафика (я предпочитаю wireshark)
Теперь нажмите любую ссылку в меню (например, «сообщения»)
Посмотрите на захваченный трафик - вы увидите, что IE отправляет двойной файл cookie PHPSESSID (и из-за этого вы вышли из системы). Похоже, что первый PHPSESSID от unisender.com, а второй от www.unisender.com.
Захваченный образец:
GET / en / letter_list HTTP / 1.1
Принять: image / gif, image / jpeg, image / pjpeg, application / x-ms-application, application / vnd.ms-xpsdocument, application / xaml + xml, application / x-ms-xbap, application / x -шоковая вспышка, /
Рефери: http://www.unisender.com/en/intro
Accept-Language: ru
User-Agent: Mozilla / 4.0 (совместимый; MSIE 8.0; Windows NT 6.0; Trident / 4.0; Mozilla / 4.0 (совместимый; MSIE 6.0; Windows NT 5.1; SV1); SLCC1; .NET CLR 2.0.50727;. NET CLR 3.5.21022; .NET CLR 3.5.30729; FDM; .NET CLR 3.0.30729)
Accept-Encoding: gzip, deflate
Хост: www.unisender.com
Подключение: Keep-Alive
Cookie: authchallenge = 3a9cfcfc9fe33822e3e21d75c8a3d3e4; PHPSESSID = 14ea1cb133632951592397c86eaf037e; us_reg_ref = неизвестно; us_reg_url = HTTP% 3A% 2F% 2F% 2Funisender.com; __utma = 1.778517853.1271204400.1271204400.1271204400.1; __utmb = 1.3.10.1271204400; __utmc = 1; __utmz = 1.1271204400.1.1.utmcsr = (прямой) | utmccn = (прямой) | utmcmd = (нет); PHPSESSID = 65e110aeb995a66b9dc8da5656c7a3da; last_login_name = testmsdn
Я пытался использовать сессионные и несессионные куки, пытался использовать .unisender.com вместо unisender.com для куки - ничего не помогает.
Полагаю, не должно быть файлов cookie с таким же именем.
Я прав? Это ошибка в IE? Если это ошибка, то есть ли обходной путь?
Или я не прав, и это ожидаемое поведение?