Вопрос

Есть ли способ установить файл cookie, который нет читается на поддоменах?Другими словами, сделайте файл cookie доступным на domain.com, но нет www.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 для моего сайта?Есть ли обходные пути?

Это было полезно?

Решение

Очевидно, наличие файла cookie на «domain.com», который будет соответствовать «*.domain.com», является ожидаемым поведением.

Например : ПОСЛЕДОВАТЕЛЬНЫЕ HTTP COOKIE-ФАЙЛЫ СОСТОЯНИЯ КЛИЕНТА состояние (некоторый акцент мой) :

domain=DOMAIN_NAME

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

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

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

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

Другие советы

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top