Настройка домена не работает с php при использовании setcookie - PullRequest
1 голос
/ 05 августа 2011

У меня проблема с установкой файла cookie для определенного домена, отличного от домена веб-сайта, на котором создается файл cookie.

Следующий код с предоставленным доменом не работает:

setcookie('mycookie','mydata1',time() + 2*7*24*60*60,'/','www.domain.com', false);

когда я изменяю вышеуказанный код на этот, файл cookie устанавливается с доменом моего сервера:

setcookie('mycookie','mydata1',time() + 2*7*24*60*60,'/');

Любая помощь очень ценится!

1 Ответ

4 голосов
/ 05 августа 2011

К сожалению, это не сработает, если сайт, на котором установлен файл cookie, не совпадает с просматриваемым. В противном случае ничто не помешает злоумышленнику установить случайные файлы cookie. Вы можете зайти на какую-нибудь случайную страницу и перезаписать все ваши cookie-файлы, в качестве основного примера выхода из каждого сайта, на котором вы вошли.

Аргумент домена setcookie предназначен для указания домена, связанного с просматриваемым, чтобы позволить им иметь доступ к cookie. Например, когда вы входите в календарь Google, даже если вы просматриваете календарь на http://calendar.google.com,, файл cookie устанавливается с доменом .google.com, что означает, что если вы перешли на http://mail.google.com, вы все равно войдете в систему. Если программа календаря установит для домена cookie файл .calendar.google.com, то вам придется входить в систему отдельно при посещении http://mail.google.com.

В документации упоминается этот материал, но он довольно непрозрачен, если вы не знаете, что он пытается сказать. http://php.net/manual/en/function.setcookie.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...