Я работаю над сайтом с несколькими подобластями, некоторые из которых должны получить свой сеанс.PHP: Управление доменом/поддоменом файлов cookie
Я думаю, что у меня все получилось, но заметили что-то о обработке файлов cookie, которые я не понимаю. Я не вижу ничего в документах, которые объясняют это, поэтому я подумал, что я увижу, есть ли у кого-нибудь из них какой-то свет, чтобы избавиться от вопроса.
Если я просто делаю:
session_start();
Я в конечном итоге с куки сессии, как это:
subdomain.example.net
Однако, если я делать какие-либо попытки установить куки домен сам, либо как
ini_set('session.cookie_domain', 'subdomain.example.net');
или как
session_set_cookie_params(0, "/", "subdomain.example.net", false, false);
В итоге я получаю файл cookie для .subdomain.example.net (обратите внимание на открывающую точку), что, я считаю, означает «сопоставить все поддомены (или в этом случае суб-поддомены).
Это похоже на все мои файлы cookie, а не только на сеанс. Если я сам установил домен cookie, у него автоматически будет точка, добавленная, что означает этот домен и все его дочерние элементы. Если я не устанавливаю домен, тогда он становится прав, используя только текущий домен.
Любая идея, что вызывает это, и что я могу сделать, чтобы контролировать эту добавочную точку?
Спасибо!
Вам не нужно контролировать ведущую точку, потому что она просто * игнорируется * браузером, в соответствии с RFC 6265, что и каждый современный браузер. Поэтому просто не думайте о ведущей точке. Помимо этого, установите для домена cookie явным образом или установите его в пустую строку, чтобы ограничить его хостом текущего запроса. В библиотеке https://github.com/delight-im/PHP-Cookie есть некоторые удобные элементы управления для этого. – caw 2016-07-13 00:05:28