HTTP и куки работают с несколькими серверами

Предполагая, что упрощенная схема соединения HTTP/1.1, в котором клиент создает страницу, и запрос изображения с назначением файла cookie можно сократить до следующего:

(Время передачи второго запроса не так уж и незначительно, оно варьируется в зависимости от размера файла cookie)

Может кто-нибудь объяснить мне, как работает технология cookie, когда, например, изображение сохраняется на другом сервере, чем тот, на котором сохраняется страница? Отправляет ли клиент тот же идентификатор cookie, назначенный ранее, на второй сервер? Или это зависит от того, как реализованы серверы?

Позвольте мне сказать, чтобы избежать недоразумений, что для меня ясно, что если изображение сохраняется на другом сервере, клиент должен установить другое TCP-соединение.

Очевидно, мы работаем с постоянными сеансами HTTP и не рассматриваем какой-либо маршрутизатор между C и S.

1 ответ

Решение

Похоже, вы смешиваете две вещи.

Файлы cookie хранятся на стороне клиента. Все куки (в зависимости от URL) отправляются с запросом клиента, поэтому на сервере хранятся все данные в куки (они сохраняются на клиенте, а не на сервере). Там нет идентификатора Cookie.

Может быть, вы думаете об идентификаторе сессии. При этом в cookie на стороне клиента хранится только идентификатор сеанса (cookie с именем PHPSESSID или что-то подобное со значением идентификатора сеанса), а все данные сеанса хранятся на сервере. В этом есть проблема, когда вы хотите получить доступ к сеансу с другого сервера. Вы можете решить эту проблему, сохранив сессии в каком-то общем хранилище, в базе данных или в memcache/redis.

Другие вопросы по тегам