SEO html5css.dev
html5css.dev

SEO продвижение сайтов

Полный цикл: от проектирования и семантики до ссылочного, перелинковки и текстов.

0. Старт С чего начинается работа: цели, инструменты, сервисы 2 1. Проектирование сайта Структура, семантика, title и description 11 2. Прототипирование Карточка товара и страница категории на примере магазина 3 3. Контент и ключевые слова Ключи в тексте, заголовки, объём, читаемость, изображения, внутренние ссылки 20 3.1. Сайт целиком и коммерция Структура, sitemap, крошки, домен, контакты, ассортимент, доставка, поддержка 22 3.2. Поведенческие факторы Домен и бренд, релевантность title, вложенность, удовлетворённость пользователя 11 4. Техническая оптимизация Скорость, дубли, robots.txt, sitemap.xml, битые страницы 9 5. Внешние факторы Ссылочное, доноры, анкоры, линкбилдинг 13 6. Продвижение бренда Брендовый трафик и его оценка 3 7. Нестандартные методы Актуализация контента, нулевая позиция, SILO, обрезка контента 17 8. Крауд-маркетинг Форумы, отзовики, Q&A, соцсети, поиск площадок и сервисы 16 8.1. Стратегии крауда Стратегии размещения, выживаемость постов, объёмы, делегирование 11 9. Юзабилити сайта Макет, навигация, формы, корзина, контрастность 10 10. Внутренняя перелинковка Вес страниц, анкоры, схемы связывания 10 11. Работа с текстами LSI, структура текста, применение ключей 8

С чего начать

Последовательный курс: проектирование → внутренняя оптимизация → техничка → ссылочное → тексты.

15глав
166уроков

Мобильная выдача

Отдельный курс про мобильный индекс: скорость, интерфейс, голосовой поиск и регионы.

6глав
44урока

Новый курс

Поиск всё чаще отвечает текстом. Курс о том, как попадать в источники этих ответов и не потерять доверие.

5глав
15уроков
  1. html5css.dev
  2. SEO
  3. Мобильное SEO
  4. Скорость сайта
  5. Протоколы HTTP/2 и HTTP/3
Глава 4 · Скорость сайта Урок 5 из 7 Обновлено 26.08.2026

Протоколы HTTP/2 и HTTP/3

HTTP/2 убрал главное ограничение HTTP/1.1, но остался на TCP. HTTP/3 работает поверх QUIC и переживает смену сети — на мобильных это заметнее всего.

Что изменилось с прошлой версии урока Урок описывал HTTP/2 как новинку и рекомендовал server push. Push из браузеров убран, а актуальная задача теперь — включить HTTP/3. Плюс уточнён список приёмов, которые перестали быть полезными.

Сравнение поколений

HTTP/1.1HTTP/2HTTP/3
ТранспортTCPTCPQUIC поверх UDP
Параллельные запросыПо одному на соединениеМультиплексированиеМультиплексирование
Блокировка очередиНа уровне запросовОстаётся на уровне TCPОтсутствует
Сжатие заголовковНетHPACKQPACK
Потеря пакетаЗадерживает всёЗадерживает все потокиЗатрагивает один поток
Смена сетиРазрывРазрывСоединение сохраняется
Установка соединенияTCP + TLSTCP + TLSОбъединена, быстрее

Ключевая строка для мобильных — предпоследняя. Когда телефон переключается с Wi-Fi на мобильную сеть, HTTP/3 продолжает работу, а HTTP/2 требует нового рукопожатия.

Включение на nginx

server {
    listen 443 ssl;
    listen 443 quic reuseport;   # HTTP/3
    http2 on;                    # HTTP/2

    ssl_protocols TLSv1.2 TLSv1.3;

    # сообщаем браузеру, что доступен HTTP/3
    add_header Alt-Svc 'h3=":443"; ma=86400' always;
}

Обязательное условие для обоих протоколов — работающий HTTPS. Настройка разобрана в уроке о протоколе HTTPS.

Не забудьте про UDP QUIC работает по UDP на порту 443. Если в файрволе открыт только TCP, HTTP/3 просто не заработает, а браузер молча вернётся к HTTP/2. Проверяйте не конфигурацию, а фактический протокол в ответе.

Приёмы, которые перестали работать

Приём эпохи HTTP/1.1Почему больше не нужен
Склейка всего CSS и JS в один файлМультиплексирование убрало плату за число запросов; крупный бандл ломает кеширование при любой правке
Спрайты изображенийОтдельные файлы кешируются независимо; SVG-спрайт остаётся полезен по другой причине
Раздача с нескольких поддоменовОбход лимита соединений больше не нужен, а лишние DNS-запросы и рукопожатия вредят
Инлайн ресурсов ради экономии запросовИнлайнить стоит только критический CSS, остальное лучше кешировать отдельно
Server pushУбран: чаще отправлял то, что уже в кеше. Заменён на preload

Что делать вместо push

<!-- шрифт первого экрана -->
<link rel="preload" href="/fonts/main.woff2" as="font"
      type="font/woff2" crossorigin>

<!-- картинка-герой -->
<link rel="preload" as="image" href="/img/hero-800.avif"
      imagesrcset="/img/hero-400.avif 400w, /img/hero-800.avif 800w"
      imagesizes="(max-width: 768px) 100vw, 800px">

preload сообщает браузеру о критичном ресурсе заранее, но не навязывает то, что уже есть в кеше. Не злоупотребляйте: несколько preload на странице максимум, иначе они начинают конкурировать друг с другом.

Проверка

# какой протокол отдаётся
curl -sI --http3 https://site.ru/ | head -1
curl -sI --http2  https://site.ru/ | head -1

# заголовок Alt-Svc
curl -sI https://site.ru/ | grep -i alt-svc

В DevTools → Network включите колонку Protocol: h2 — HTTP/2, h3 — HTTP/3. Первый запрос обычно идёт по HTTP/2, а последующие переключаются на HTTP/3 после получения Alt-Svc.

Итог

HTTP/2 сегодня минимум, HTTP/3 — то, что стоит включить ради мобильных пользователей. И не менее важно убрать оптимизации прошлой эпохи: склейку бандлов, спрайты и раздачу с нескольких доменов — они теперь мешают. Дальше — многоуровневое кеширование.

Частые вопросы

Нужен ли HTTP/3, если уже включён HTTP/2?

На мобильных — да. HTTP/3 работает поверх QUIC: нет блокировки очереди на уровне TCP, потеря пакета затрагивает только один поток, а соединение переживает переключение между Wi-Fi и мобильной сетью.

Какие приёмы оптимизации устарели с приходом HTTP/2?

Склейка файлов в один бандл, спрайты изображений, раздача статики с нескольких доменов (domain sharding) и инлайн ресурсов ради экономии запросов. При мультиплексировании много мелких файлов не проблема, а преимущество для кеширования.

Что стало с server push?

Практика показала, что он чаще вредит, чем помогает: сервер отправляет ресурсы, которые уже есть в кеше браузера. Поддержку убрали, вместо него используют rel="preload".

Как проверить, какой протокол используется?

В DevTools → Network включить колонку Protocol: h2 означает HTTP/2, h3 — HTTP/3. Из консоли — запросом curl с флагом --http3.

Вся глава «Скорость сайта» — 7 уроков
  1. Производительность сайта и способы её измерения
  2. Минификация контента
  3. Сжатие: Brotli и GZIP
  4. Оптимизация изображений
  5. Протоколы HTTP/2 и HTTP/3
  6. Настройка многоуровневого кеширования
  7. Использование CDN