Включение HTTP2 в NGinx. Настройка HTTP2 на примере NGinx и ISP 5 Lite.

18 января 2018

install http2 nginx

Как включить поддержку HTTP2 в Nginx, на примере CentOS.

HTTP/2 – это новая версия протокола HTTP. Он является последователем текущей версии HTTP/1.1 - которая работает с 1999 года. Выпуск новой версии протокола был прямой необходимостью, так как интернет развивался все это время стремительными темпами.

Основная цель выпуска нового протокола избавится от недостатков предыдущего и ускорить скорость загрузки страниц. Ускорение работы сайтов достигается благодаря использованию новой методики - мультиплексированию потоков. Помимо этого новый протокол использует сжатие заголовков и расстановку приоритетов запросов.

Обязательным условием для использования протокола, является необходимость использования SSL-сертификата. У нас Вы можете получить его бесплатно на любом тарифе.

Для включения данной приятной опции, на нашем VPS или выделенном сервере нам понадобится OpenSSL 1.0.2. По умолчанию он пока не поставляется, потому нам нужно установить его в ручную.

Для этого выполняем команды:

yum -y groupinstall 'Development Tools' yum -y install openssl-devel libxml2-devel libxslt-devel gd-devel perl-ExtUtils-Embed GeoIP-devel mkdir -p /opt/lib wget https://www.openssl.org/source/openssl-1.0.2h.tar.gz -O /opt/lib/openssl-1.0.2h.tar.gz tar -zxvf /opt/lib/openssl-1.0.2h.tar.gz -C /opt/lib

Далее скачиваем и устанавливаем Nginx 1.11.2

rpm -ivh http://nginx.org/packages/mainline/centos/7/SRPMS/nginx-1.11.2-1.el7.ngx.src.rpm

После этого прекомпилируем NGinx с нашей библиотекой OpenSSL:

sed -i "s|--with-http_ssl_module|--with-http_ssl_module --with-openssl=/opt/lib/openssl-1.0.2h|g" /root/rpmbuild/SPECS/nginx.spec rpmbuild -ba /root/rpmbuild/SPECS/nginx.spec

Затем устанавливаем собранный нами Nginx:

rpm -Uvh /root/rpmbuild/RPMS/x86_64/nginx-1.11.2-1.el7.centos.ngx.x86_64.rpm

Проверяем:

[root@tech-wellweb ~]# nginx -V nginx version: nginx/1.11.2 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) built with OpenSSL 1.0.2h 3 May 2016 TLS SNI support enabled

На этом все. Мы получаем сервер с NGinx с поддержкой HTTP/2.

Если у Вас возникли сложности и Вы являетесь нашим клиентом, откройте тикет в службу поддержки мы с радостью поможем Вам в этом.