PHP setcookie () для домена, но НЕ поддомены

Есть ли способ установить cookie, который не читается на поддоменах? Другими словами, куки- xyz.domain.com доступны на domain.com , но не xyz.domain.com или xyz.domain.com .

 //this is what i'm "intending"... setcookie($name,$value,$expires,'/','domain.com'); //however, this is how it behaves: setcookie($name,$value,$expires,'/','.domain.com'); 

Объяснение: Я настраиваю статический CDN на субдомен и не хочу, чтобы файлы cookie пользовательского сеанса перемещались взад и вперед для каждого изображения, файла css, js-файла и т. Д.

… я должен вернуться к использованию www.domain.com для моего сайта? Есть ли обходные пути?

Solutions Collecting From Web of "PHP setcookie () для домена, но НЕ поддомены"

По-видимому, ожидается, что cookie на "domain.com", который будет соответствовать "* .domain.com".

Например: СТАТИСТИЧЕСКИЙ СОСТОЯНИЕ КЛИЕНТОВ HTTP COOKIES state (некоторые мои замечания ) :

domain=DOMAIN_NAME

При поиске списка файлов cookie для действительных куки-файлов сравнение атрибутов домена cookie производится с именем домена в Интернете хоста, из которого будет извлекаться URL-адрес. …
«Соответствие хвоста» означает, что атрибут домена сопоставляется с хвостом полного доменного имени хоста. Атрибут домена «acme.com» соответствует именам хостов «anvil.acme.com», а также «shipping.crate.acme.com» .

Только хосты в указанном домене могут устанавливать cookie для домена, а для доменов должны быть не менее двух (2) или трех (3) периодов, чтобы предотвратить домены формы: «.com», «.edu» и «. va.us». Любой домен, который выходит из строя в одном из семи специальных доменов верхнего уровня, перечисленных ниже, требует только двух периодов. Для любого другого домена требуется не менее трех. Семь специальных доменов верхнего уровня: COM, EDU, NET, ORG, GOV, MIL и INT.

Таким образом, вам придется либо:

  • используйте « www.domain.com » для своего сайта
  • или использовать совершенно другое доменное имя для вашего статического контента (например, « .anotherdomain.com »)
    • например, это то, что делается в stackoverflow: статический контент подается с sstatic.net

это является причиной того, что довольно много сайтов (включая этот) регистрируют выделенный домен для использования в качестве CDN.

Это невозможно, так как домен файла cookie сопоставляется с именем домена. Вам придется идти с www.