IE10, похоже, обрабатывает файлы cookie и субдомены по-другому, чем другие основные браузеры (IE8, IE9, Firefox, Chrome, Safari).
Мы широко используем субдомены для тестовых сред, например:
- user1.devel.example.com
- user2.devel.example.com
- qa.example.com
И наша производственная среда находится наверху, например. example.com(и технически также на www.example.com).
Мы используем функцию php setcookie($name, $value, $expires)
наивно (не указывается явный путь или домен), чтобы установить cookie, а затем очистить файлы cookie (когда пользователь выходит из системы), назначив пустую строку значению. Это всегда срабатывало нормально, и каждый уникальный субдомен использовал свои собственные файлы cookie.
IE10 теперь "разделяет" cookie, который был установлен в TLD со всеми подобластями. Первоначальный симптом, который мы наблюдали, заключался в том, что никто не мог выйти из поддомена. Мы заметили несколько вещей:
- Несмотря на то, что он имеет значение, ни один поддомен не может очистить файл cookie.
- Когда TLD очищает файл cookie, он сразу же удаляется из всех поддоменов.
Кто-нибудь еще наблюдал подобное поведение по тому, как IE10 хранит/применяет файлы cookie относительно поддоменов? Существует ли какое-либо обходное решение, отличное от того, в каком домене применяется cookie при отправке исходного заголовка Set-Cookie?