Использование одного и того же идентификатора сеанса в двух сценариях PHP одновременно
Иногда я обнаружил странную проблему с PHP-сессиями.
Когда я запускаю два PHP-скрипта с использованием одного и того же идентификатора сеанса, второй скрипт зависает до тех пор, пока не завершится первый.
Я думаю, это потому, что пытаться открыть один и тот же файл хранения сеанса дважды. Но возможно я не прав.
Вы никогда не поймете этот эффект в нормальной работе сайта, потому что пользователь обычно неt открыть две или более страниц одновременно.
Тем не менее, если вы попытаетесь получить содержимое страницы того же сайта, используяfile_get_contents()
, вы поймете эту проблему.
Кроме того, я копирую свои куки через контекст, поэтомуfile_get_contents()
попытка открыть тот же сеанс, который уже был открыт в вызывающем скрипте.
В результате я застрял в длительном скрипте (около 5-10 минут), который также запрещает мне открывать любую новую страницу того же сайта, используя тот же идентификатор сессии / логин.
Как я могу решить эту проблему? Вы когда-нибудь видели красивое решение для этого?