Поддерживает ли модуль nginx HTTP/2 Server Push?
Я планирую обновить свой nginx до 1.9.6, который поддерживает HTTP/2.
Установили ли nginx HTTP/2-сервер?
исх:
https://ma.ttias.be/service-side-push-http2-nghttp2/
Ответы
Ответ 1
Нет, Nginx еще не поддерживает HTTP/2-сервер.
Команда Nginx указала в исходном 1,9.5 сообщении блога, что в то время она не поддерживалась.
В последующих выпусках с 1.9.6 по 1.11.10 ничего в changelog не говорит о состоянии модуля HTTP/2 изменилось.
Ответ 2
Nginx не поддерживает push-сервер HTTP/2 по состоянию на март 2017 года (v1.11).
Оуэн Гарретт в nginx кратко изложил следующие причины:
-
это несущественная и необязательная часть http/2
-
Если клиент уже имеет кешированный ресурс, то, нажав на него, вы можете излишне тратить пропускную способность.
-
В будущем может измениться спецификация сервера push.
-
Связи заголовков в качестве подсказок полезны, но использование было низким от веб-разработчиков.
-
серверный push был доступен как часть SPDY и не использовался многими веб-разработчиками.
Прочитайте его оригинальные комментарии здесь. В этой таблице точно описываются про и совпадения серверных подсказок и нажатия на сервер.
Лично это меня разочаровывает, потому что я думаю, что это будет ценной возможностью для веб-разработчиков, желающих потратить время на оптимизацию скорости страницы. Я также знаю, что некоторые крупные CDN, такие как Cloudflare, внедрили собственную версию в nginx для оптимизации загрузки страниц.
Ответ 3
Вам нужно заплатить за него с подпиской nginx plus https://www.nginx.com/blog/http2-r7/.
Apache предоставляет его бесплатно
https://httpd.apache.org/docs/2.4/mod/mod_http2.html#h2push