Включая заголовок для Http2, включая css, js и файлы в php для отправки на сервер

После успешного включения http2 в apache2. Я столкнулся с проблемой для толчка сервера. У меня есть 4-5 CSS, 4-5 JS и 100 изображений на сайте. Так как бы я работал с несколькими активами?

    <link href="source" rel="stylesheet">
<script src="source"></script>
<img src="source">
header('Link: </asset/to/push.js>; rel=preload; as=script')

поэтому я должен заголовок для каждого актива, если у меня есть 100 активов, будет 100 заголовок или около того

0

Решение

Альтернативное решение для добавления 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.

1

Другие решения

Просто вставьте то, что действительно нужно, рано, иначе вы можете вообще не получить никакого выигрыша в производительности.

Вот как я могу добавить Icon-Font:

header("link: </fonts/icons.woff2?v=".$version.">; rel=preload; as=font; type=\"font/woff2\" nopush", false);

Не забудьте установить replace = false при использовании нескольких заголовков ссылок.

0

По вопросам рекламы [email protected]