Альтернативное решение для добавления заголовков Link
и использования Apache для их разбора и передачи связанных ресурсов состоит в том, чтобы естественным образом сопоставить вторичные ресурсы, такие как js
, css
и файлы изображений, с первичным ресурсом.
Это подход, который мы использовали в Jetty (отказ от ответственности, я являюсь разработчиком этого решения).
Мы используем это решение для обслуживания нашего собственного веб-сайта на основе WordPress через HTTP/2 с HTTP/2 Push.
Подход представлен здесь: слайды, видео.
Основная идея заключается в том, что когда браузер получает HTML-страницу, он немедленно анализирует ее и выполняет запросы, необходимые для загрузки вторичных ресурсов, таких как файлы js
и css
. Сервер, в данном случае Jetty, может сопоставлять первичный ресурс (html
) с вторичными ресурсами.
В следующий раз, когда поступит запрос на ту же страницу html
, Jetty уже знает, какие вторичные ресурсы необходимы, и может отправить их. Нет необходимости в заголовках Link
, поскольку Jetty «узнает», какие ресурсы необходимы странице, из шаблонов запросов, которые выполняет браузер.
Этот подход можно точно настроить в зависимости от базы, но он отлично работает сразу после установки и обеспечивает значительное повышение производительности, см. здесь для живой демонстрации в видео, указанном выше.
Я рекомендую прочитать/посмотреть все слайды/видео для более широкого контекста HTTP/2 и HTTP/2 Push, но дело в том, что комбинация Jetty + PHP с HTTP/2 является мощным решением для HTTP/2 Push и требует никаких изменений в PHP-страницах, что идеально при использовании PHP-фреймворков, таких как WordPress или Drupal, и позволяет избежать добавления 100+ заголовков Link
на ваши PHP-страницы.
person
sbordet
schedule
23.02.2017
login.php
нуженcss/style.css
, именно файлlogin.php
должен предоставить заголовок push-уведомления сервера. - person Koala Yeung   schedule 23.02.2017