В этой статье мы покажем вам, как включить поддержку HTTP/2.0 в Nginx на Ubuntu 16.04 LTS. Для тех из вас, кто не знает, HTTP/2 является новым обновленным протоколом HTTP, и он должен быть гораздо более эффективным, чем теперь устаревшая версия HTTP/1.1. Его цель состоит в том, чтобы сократить время ожидания, а также, сделать веб-приложения быстрее, позволяя несколько одновременных запросов между веб-браузером и сервером через одно соединение TCP. Если вы хотите ускорить время загрузки вашего сайта или блога, то вы должны включить HTTP / 2.0 в вашем веб-сервере.

В данной статье предполагается, что вы по крайней мере, имеете базовые знания Linux, знаете, как использовать оболочку, и, самое главное, вы размещаете свой сайт на своем собственном VPS. Установка очень проста и предполагает, что вы работаете в корневой учетной записи, если вы не можете добавить «sudo» к командам, чтобы получить привилегии суперпользователя. Мы покажем вам шаг за шагом, как включить поддержку HTTP/2.0 в Ubuntu 16.04 (Xenial Xerus) под управлением сервера Nginx.

Включение поддержки HTTP/2.0 на Nginx

Шаг 1. Обновление системы

Сначала убедитесь, что все системные пакеты обновлены, выполнив эти команды apt-get в терминале.

sudo apt-get update
sudo apt-get upgrade

 

Шаг 2. Включение HTTP/2.0 на веб-сервере Nginx.

Убедитесь, что ваша версия Nginx поддерживает протокол HTTP/2. Если вы не установили Nginx или использовать старую версию, обновите его первым:

apt-get install nginx

 

Чтобы проверить версию Nginx можно использовать следующее:

nginx -v
# nginx version: nginx/1.10.1

 

Чтобы включить HTTP/2 в Nginx на Ubuntu VPS, вы должны изменить блок сервера Nginx по умолчанию:

nano /etc/nginx/sites-available/default

 

Добавьте ключевые слова http2 для конфигурации блока/сервера виртуального хоста:

server { server_name andreyex.ru www.andreyex.ru; listen 443 ssl http2 default_server; root /var/www/html; index index.html; location / { try_files $uri $uri/ =404; } ssl_certificate /etc/nginx/ssl/domain.ru.crt; ssl_certificate_key /etc/nginx/ssl/domain.ru.key;
}
server { listen 80; server_name domain.com www.domain.com; return 301 https://$server_name$request_uri;
}

 

Включение действительно легко, просто измените текущую SSL линию для этого:

server { listen 443 ssl; ...
}

 

на эту:

server { listen 443 ssl http2; ...
}

 

После того, как вы закончите с редактированием блока сервера, сохраните и закройте файл. Проверьте, есть ли ошибки в конфигурации Nginx с помощью команды:

nginx -t

 

А затем перезапустить Nginx для того, чтобы изменения вступили в силу:

systemctl restart nginx.service

 

Шаг 3. Проверка HTTP/2.

Перейдите к https://tools.keycdn.com/http2-test и проверьте обнаружение HTTP/2.0 в домене:

https://tools.keycdn.com/http2-test

 

Поздравления! Вы успешно включили HTTP/2.0 на веб-сервере. Спасибо за использование этой статьи для включения поддержки HTTP/2.0 на Nginx под управлением системы Ubuntu 16.04 LTS (Xerus Xerus). Для получения дополнительной помощи или полезной информации, мы рекомендуем вам зайти на официальный веб – сайт Nginx.

Источник: AndreyEx.ru