Идентификаторы сеанса - это, по сути, просто случайные числа. Это HIGHLY маловероятно, но не невозможно, чтобы два или более пользователя получили один и тот же идентификатор сеанса.
PHP делает (я считаю) проверить, существует ли еще одна сессия, в которой используется идентификатор, который только что сгенерирован. Если есть столкновение, оно просто сгенерирует еще один, и продолжайте пытаться, пока не появится что-то «уникальное». Тем не менее, это не мешает случай, когда:
- пользователь А получает идентификационный номер сессии «X»
- пользователя А уходит на некоторое время и сессию «X» получает истекло
- пользователя B показывает вверх, и сервер снова генерирует идентификатор сеанса «X» случайным образом.
- пользователь A возвращается с исходным идентификатором файла cookie X и получает сеанс пользователя B.
Опять же, учитывая размер идентификационного пространства сеанса, очень маловероятно, чтобы это произошло. Но опять же, это не невозможно.
Кроме того, бывают случаи, когда сломанные/неправильно сконфигурированные прокси-серверы путают файлы cookie и в основном «перекрестные провода», так что идентификаторы сеансов смешиваются между разными пользователями. Я помню случай, когда шлюз мобильного оператора делал именно это, и люди на определенной модели смартфона получали сеансы других людей вместо того, на котором они были.
Я не уверен, но я думаю, что сервер заботится о сеансах, поэтому нет возможности путать этот сервер с сервером. Тем не менее, я также хотел бы знать, если это не так. – Wh1T3h4Ck5
Вы имеете в виду двух пользователей на одном компьютере? Если они находятся в другом браузере, тогда им не будет помешано, но невозможно иметь двух пользователей в одном браузере, если вы не закодируете свой собственный путь. – Flipper