Internet Explorer игнорирует PHP setcookie() с сервера CentOS

В прошлом мы использовали сервер Windows XAMPP для внутреннего веб-сайта. Он работал нормально, но имел некоторые временные проблемы, и мы решили перейти на сервер LAMP на CentOS.

Мы сделали это сегодня, но оказалось, что Internet Explorer игнорирует все мои попытки сохранить cookie. В используемом URL-адресе нет подчеркивания... URL-адрес фактически совпадает с URL-адресом сервера XAMPP, где я смог без проблем сохранить файлы cookie.

Это действительно не имеет никакого смысла для меня, весь код одинаков. Единственное, что нужно изменить - это версия PHP и ОС сервера. Сайт работает на всех других браузерах, кроме IE.

Я даже не могу сделать простой вызов setcookie. На пустой тестовой странице я использую setcookie("test", "test", time()+36000, "/"); сна (5); print_r($_COOKIE); и там ничего нет Наши пользователи не могут войти на сайт из-за этого, и я понятия не имею, в чем проблема. Если кто-то может предоставить какие-либо подсказки или решения, я был бы очень признателен.

Очевидно, что простой ответ - не использовать IE, но это не вариант в этом случае.

2 ответа

Хорошо, я выяснил, в чем проблема. Часы сервера были отключены на несколько часов, и я считаю, что Internet Explorer строго контролирует время сервера. Таким образом, все куки были сразу истекает.

Я использовал эту статью, чтобы исправить время на сервере, и теперь все работает отлично.

Как обновить время на сервере CentOS с официального сервера времени?

AFAIK, setcookie отправляет заголовок на страницу, и обычно страница должна быть перезагружена снова, чтобы файл cookie был доступен для страницы. Перезагрузка страницы тоже произвела это?

Array ()

Или... это может быть проблемой: https://stackoverflow.com/a/794267

Другие вопросы по тегам