Я не могу установить cookie в браузере. Это происходит, когда я добавляю www в домен cookie, но не могу понять, почему.
Описание проблемы
У нас есть домен mycompany.com
, приложение, работающее под mycompany.com
, и другое приложение под subdomain.mycompany.com
. Каждый из них имеет свой собственный файл cookie, безопасный и httpOnly. Мы не хотим, чтобы эти файлы cookie распространялись между доменами. У нас был домен для файла cookie mycompany.com
, установленный как .mycompany.com
. Проблема в том, что он утекает на subdomain.mycompany.com
, поэтому, чтобы избежать этого, я изменил домен на www.mycompany.com
. В нашем конфиге апача мы перенаправляем все запросы с mycompany.com
на www.mycompany.com
и весь трафик перенаправляем на https.
Поэтому, когда я перехожу к mycompany.com
или www.mycompany.com
, я попадаю в www.mycompany.com
, домен и домен cookie совпадают, это должно работать, но это не так. Файл cookie для mycompany.com
отсутствует в локальном хранилище (Chrome и Firefox). (Я также пытался использовать только mycompany.com
в качестве домена cookie, но, как и ожидалось, cookie просачивается в subdomain.mycompany.com
, как когда я использовал .mycompany.com
)
Вот файл cookie, отправленный сервером:
my_cookie=xxxxxxxxxxxxxx;Version=1;Comment=;Domain=www.mycompany.com;Path=/;Max-Age=604800000;Secure;HttpOnly;Expires=Fri, 26 Aug 2016 09:32:40 GMT
Читая об этом, я подумал, что проблема может быть в перенаправлении, но это происходит независимо от того, перехожу ли я к mycompamy.com
или www.mycompany.com
.
Что я делаю неправильно?
PS: файл cookie создается не приложением, работающим под mycompany.com, а другим процессом, работающим под services.mycompany.com
, которому клиент отправляет запросы, чтобы получить файл cookie. Может быть, это может быть проблемой.