Проблема с Bluehost (или PHP Script) с файлами cookie
У меня самая странная проблема с Cookies. Я написал несколько скриптов PHP, которые используют токены для идентификации посетителя, чтобы "он / она" мог правильно использовать веб-сайт.
Система Token отлично работает на локальной машине разработки (windoze+ZendApache) и не работает на рабочем сервере, который находится на Bluehost.
Я использую "/" для пути и "mydomain.com" для домена при установке cookie с истечением 60 дней. Я правильно вижу файлы cookie в браузере и могу подтвердить, что значения установлены правильно по сравнению со значениями в базе данных.
Каждый раз, когда страница обновляется, сервер не получает cookie, создает новый токен, отправляет его обратно в браузер и снова создает новую запись в базе данных. Новый cookie снова совпадает с последней записью, но в следующий раз, когда я обновляюсь, снова и снова. Не может поддерживать токен, поэтому навигация по сайту невозможна.
Есть идеи, почему это происходит? Возможно ли, что я пропустил некоторые настройки?
Я тестировал его на последних версиях Firefox, Opera, Safari и Chrome.
Благодарю.
РЕДАКТИРОВАТЬ:
Это проблема, связанная с PHP и Bluehost, я хранил 3, 40-символьные строки для значения cookie в сериализованном формате. Функция unserialize() по какой-то причине не выполнялась на Bluehost, но на моем компьютере разработчика работала нормально. Поэтому я изменил сохраненное значение на 40chars.40chars.40chars и взорвал значение с помощью разделителя "." чтобы получить 3 строки.
Еще раз спасибо.
1 ответ
Ты должен использовать
.mydomain.com
вместо
mydomain.com
например:
setcookie("MyCookie", $value, time()+60*24*3600, "/", ".mydomain.com", 1);