Сессии с PHP и Amazon AWS EC2 - PullRequest
       6

Сессии с PHP и Amazon AWS EC2

0 голосов
/ 21 февраля 2019

Я использую веб-сайт на AWS с доменным именем, зарегистрированным на Godaddy.Домен Godaddy mydomainname.com указывает на IP-адрес моего экземпляра AWS EC2, который имеет общедоступный DNS ec2-x-xx-xxx-xxx.compute-1.amazonaws.com.

Я использую PHP для кода на стороне сервера и столкнулся с проблемой сессий.Я устанавливаю переменную $ _SESSION, когда пользователь входит в систему, но единственная проблема состоит в том, что, если я вхожу на mydomainname.com, сеанс устанавливается только здесь, и если я вхожу на ec2-x-xx-xxx-xxx.compute-1.amazonaws.com, сессия только там установлена.Как я могу заставить сеансы координировать работу на обоих сайтах, когда они должны быть едиными?

Я новичок в веб-разработке, поэтому, пожалуйста, будьте добры:)

Ответы [ 2 ]

0 голосов
/ 21 февраля 2019

Это не сработает.Сессии требуют куки в браузере клиентов, которые отправляются с каждым запросом.Это обычный способ, которым сервер определяет, какой сеанс относится к какому входящему запросу.

Браузер только (почти только) отправляет куки обратно в домен, который их выдал.Это означает, что когда сеанс устанавливает cookie из «ec2-x-xx-xxx-xxx.compute-1.amazonaws.com», браузер не будет отправлять этот cookie на «my-domain.com» или любой другой домен.

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

Если вы беспокоитесь о пользователях, обращающихся к вашему сайту с несколькими доменамизатем решение состоит в том, чтобы настроить веб-сервер для перенаправления любых запросов альтернативных хостов на имя основного хоста, которое вы хотите использовать на сервере.

0 голосов
/ 21 февраля 2019

Никто (кроме вас, и даже тогда, не для обычного использования, только для внутреннего использования и отладки) не должен использовать ec2-x-xx-xxx-xxx.compute-1.amazonaws.com.Укажите mydomainname.com на него через DNS (используя запись CNAME или запись ALIAS Route53), и пусть ваши пользователи используют настоящее доменное имя.

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