Насколько я понимаю, когда Apache получает запрос на один из прослушиваемых TCP-портов (например, 80, 443), он решает, какой хост запрашивается, посмотрев заголовок HTTP Host. Затем сервер узнает, на какой виртуальный хост он должен перенаправить запрос.
Но как это работает для HTTP через SSL / TLS? Поскольку весь HTTP-запрос зашифрован (по крайней мере, это то, что, я полагаю, я где-то прочитал), информацию заголовка можно прочитать только после того, как сервер расшифровал данные. Но для расшифровки необходимо знать, какую пару ключей использовать, поскольку на веб-сервере можно установить несколько SSL-сертификатов.
Так как же сервер узнает, какой ключ ему нужен для расшифровки?
Мое предположение :
Я мог предположить, что рукопожатие TLS предоставляет необходимую информацию.
Относительно флага «возможный дубликат» :
Хотя я согласен, что ответы как на связанный вопрос, так и на мой, похожи, я должен сказать, что вопрос другой. Вне всякого сомнения, возможен ли хостинг нескольких сайтов с независимыми SSL-сертификатами. Вместо этого мой вопрос касается основного технического аспекта.