В прошлом году в мире сетевых технологий произошло очень важное событие: была утверждена и стандартизирована новая версия протокола HTTP — HTTP/2. HTTP/2 уже поддерживается в популярных веб-серверах: Apache и Nginx. Идёт работа по внедрению HTTP/2 в IIS. Реализована поддержка и в большинстве современных браузеров.
Основные нововведения - мультиплексирование.
Возможно, это самое главное преимущество HTTP/2. В HTTP/1.1 для каждого запроса требуется устанавливать отдельное TCP-соединение. Мультиплексирование же позволяет браузеру выполнять множество запросов в рамках одного TCP-соединения: В современных браузерах количество одновременных TCP-соединений ограничено. Поэтому страницы с большим количеством статического контента загружаются не так быстро, как хотелось бы.
В HTTP/2 благодаря мультиплексированию статические элементы загружаются параллельно, и благодаря этому существенно улучшается производительность.
Базовая настройка HTTP/2 в Nginx и Apache
Приведём краткие инструкции по включению и базовой настройке HTTP/2 в Nginx и Apache. Как уже было сказано выше, большинство современных браузеров работают с HTTP/2 только через TLS, поэтому в конфигурации вашего веб-сервера должны быть прописаны соответствующие настройки.
Nginx
Поддержка HTTP/2 реализована только в новейших версиях Nginx (1.9.5 и выше). Если у вас установлена другая версия, вам потребуется обновить её. После этого откройте конфигурационный файл /etc/nginx/nginx.conf и найдите в секции server следующую строку:
listen 443 ssl;
и замените её на:
listen 443 ssl http2;
Сохраните внесённые изменения и перезагрузите Nginx:
$ sudo service nginx reload
Apache
В Apache HTTP/2 поддерживается только в версиях 2.4.17 и выше. Если у вас установлена более ранняя версия, выполните обновление и подключите модуль mod_http2. После этого добавьте в конфигурационный файл следующие строки:
Никита Белоусов, ага, не заметил, что там 1.10 а не 1.1, ссори По поводу вашей ошибке всё-же люди пишут, что это "Anything lower will not yet have HTTP/2 support and you'll be greeted with the following error message." Т.е. всё, что ниже 1.9.5 выдает такую ошибку. По всей видимости косяк именно в сборке bitrix-env.
Евгений Крохин, косяк со стороны разработчиков я так понимаю? env раскатал скриптом .sh, где добавляется репа bitrix и ставится пакет. С другой стороны env не вкомпиливает модули в nginx и винить его в этом не вижу смысла .
Кстати > "Anything lower will not yet have HTTP/2 support and you'll be greeted with the following error message." именно к ошибке nginx: [emerg] invalid parameter "http2" in /etc/nginx/conf.d/ssl.conf:2, которая указана в той же статье. Эта ошибка не относится к указанной мною, собсно о чём я писал ранее "Иначе была бы ошибка о неизвестном параметре". Вижу в этом косяк разрабов, которые скомпилили bx-nginx без модуля http2.
Ура, товарищи! Вышла новая версия окружения 5.2.1, в котором используется nginx1.10.2, собранный с поддержкой http2! Проверил, бегает. Осталось понять, насколько оптимизирована работа со статикой в условиях обратного проксирования.
Добавил себе на сайте https://triptorg.ru/ http/2. Сервис "HTTP/2 Тест - онлайн сервис" показывает, что сайт поддерживает http/2. Но вот firebug в firefox в заголовках пишет Версия: HTTP/1.1 В чем может быть проблема? Версия Nginx 1.11.6, в конфиге все указал: listen 443 ssl http2;
Только начали вникать в эту проблему по применению HTTP 2.0 Возникли вопросы - Какие изменения вносить на сервере в VMBitrix - Какие изменения в программе Управление сайтом Bitrix - Бизнес - Реакция поисковых машин на изменения по SEO и по рекламе - Работа пользователей у кого не перестроены Браузеры с поддержкой HTTPS 2.0 а еще работают на HTTP 1.0
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».