Будут ли все запросы обрабатываться через HTTP/1.1, если часть контента поддерживает HTTP/2? Например, Мой веб-сервер поддерживает только HTTP/1.1, я сделал интеграцию с CDN, которая по умолчанию поддерживает HTTP/2. Когда я открою страницу со своего сайта, первый запрос/ответ будет через HTTP/1.1, но следующие запросы могут быть обработаны через HTTP/2, потому что эти запросы будут отправляться в CDN.
Смешанные запросы HTTP/1.1 и HTTP/2
comment
Я не уверен, что понимаю вашу установку. Обычно CDN должен действовать как прокси, и пользователи не должны подключаться к реальному серверу, а только к прокси-серверам CDN. Не могли бы вы предоставить более подробную информацию? (Во всяком случае, я не думаю, что возникнут проблемы, браузеры согласовывают протокол для каждого соединения)
- person Schwern   schedule 01.02.2017
comment
@Schwern О настройке - Да, CDN работает как прокси, но обычно для статического контента страницы сайта загружаются с серверов заказчика. Таким образом, мы могли бы получить некоторую индексную страницу с одного сервера и контент, размещенный на этой странице, с другого сервера. Насчет переговоров - да, я знаю, но я не был уверен и спросил :) Это не обычная ситуация, и документы не объясняют такие ситуации.
- person Sergey Vaskov   schedule 01.02.2017
Ответы (2)
У вас не возникнет проблем, потому что браузеры поддерживают как HTTP/1.1 для вашего сайта, так и HTTP/2 для CDN.
Браузеры могут общаться по разным протоколам с разными доменами и могут «объединять» контент, который они получают из этих разных доменов, на одной странице.
См. также: Что происходит, когда браузер, поддерживающий SPDY, получает ответ HTTP2 (H2)?.
person
sbordet
schedule
01.02.2017
Спасибо за ответ! :)
- person Sergey Vaskov; 01.02.2017
Знаете ли вы, использует ли контент, загруженный из CDN, параллельную загрузку по каналам или он пытается загрузить активы, используя стратегию 6 параллельных подключений, используемую большинством браузеров http/1.1?
- person Bob9630; 07.04.2018
Если загрузка из CDN использует HTTP/2, она получит преимущество от функции мультиплексирования HTTP/2, и поэтому она не будет ограничена 6 параллельными загрузками.
- person sbordet; 07.04.2018
HTTP2:
- Расширяет, не заменяет, предыдущие стандарты HTTP 1.1.
- Он просто изменяет то, как данные форматируются (обрамляются) и транспортируются между клиентом и сервером.
- Никоим образом не изменяет предыдущую семантику приложения. существующие приложения могут поставляться без изменений. (Методы HTTP, коды состояния, URI и поля заголовков остаются на месте)
Так что вы будете в порядке. Кстати, в Chrome> Сеть> «Столбец протокола» вы можете увидеть протокол, используемый в транзакции.
person
Juanma Menendez
schedule
12.01.2019