В этой статье мы покажем вам, как включить поддержку 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.
Сначала убедитесь, что все системные пакеты обновлены, выполнив эти команды apt-get в терминале.
sudo apt-get update sudo apt-get upgrade
Убедитесь, что ваша версия 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
Перейдите к 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.