Nginx – це веб-сервер з відкритим вихідним кодом, який завоював серця багатьох адміністраторів і розробників завдяки своїй ефективній роботі, низькому споживанню пам’яті та потужній підтримці різних протоколів. Сьогодні ми поговоримо про налаштування підтримки HTTP/2 у Nginx.
HTTP/2 – це еволюція протоколу HTTP, яка покращує передачу даних між сервером і користувачем. Він прийшов на зміну HTTP 1.1, який мав обмеження на кількість одночасних підключень і, отже, уповільнював завантаження важких сторінок. HTTP/2 вирішує цю проблему, дозволяючи паралельне завантаження даних і стиснення HTTP-заголовків.
Чому перехід на HTTP/2 важливий?
Перехід на HTTP/2 не тільки прискорює завантаження вашого сайту, а й підвищує безпеку передачі даних. Усі сучасні браузери вимагають, щоб сайти використовували HTTPS для підтримки HTTP/2, що робить передачу даних між сервером і відвідувачами більш захищеною.
Процес переходу на HTTP/2
Перед початком налаштування HTTP/2 у вас має бути сервер з Ubuntu 18.04 і встановленим Nginx. Також ваше доменне ім’я має бути спрямоване на сервер, і для цього домену має бути встановлений SSL-сертифікат (наприклад, Let’s Encrypt).
1. Налаштування сервера
Відкрийте конфігураційний файл вашого домену:
vim /etc/nginx/sites-available/ваш_домен
Додайте підтримку HTTP/2 для IPv6 і IPv4 з’єднань:
listen [::]:443 ssl http2 ipv6only=on;
listen 443 ssl http2;
Збережіть зміни та перевірте синтаксис:
nginx -t
2. Покращення безпеки
Для поліпшення безпеки виключіть небезпечні шифри. У конфігураційному файлі вашого домену змініть опцію ssl_ciphers:
ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
Перевірте синтаксис і перезавантажте сервер:
nginx -t
systemctl restart nginx.service
3. Додавання HTTP Strict Transport Security (HSTS)
Для забезпечення ще більшої безпеки додайте заголовок HTTP Strict Transport Security у ваш конфігураційний файл Nginx. Цей заголовок гарантує, що браузери будуть використовувати тільки HTTPS-з’єднання.
У конфігураційному файлі Nginx:
add_header Strict-Transport-Security "max-age=15768000; includeSubDomains" always;
Перевірте синтаксис і перезавантажте сервер.
4. Перевірка коректної роботи HTTP/2.
Ви можете перевірити роботу HTTP/2 за допомогою команди curl:
curl -I -L https://ваш_домен
У відповіді сервера має бути згадка HTTP/2.
Ви також можете використовувати Google Chrome та інструменти розробника для перевірки підтримки HTTP/2.
Тепер ваш сайт готовий до роботи з HTTP/2 – швидшою та безпечнішою версією протоколу HTTP 🚀.
Не забувайте завжди стежити за оновленнями та безпекою вашого сервера. Удачі! 🌐
Читайте також:
- Вибір найкращої ОС для вашого сервера: CentOS vs Ubuntu
- Що таке гарантована пам’ять і SWAP? У чому відмінності
- Що таке VDS/VPS сервер, і як вибрати найкращий
Запитання та відповіді
HTTP/2 має низку переваг, включно з підвищенням продуктивності завдяки таким функціям, як мультиплексування і стиснення заголовків, підвищенням безпеки завдяки вбудованій підтримці шифрування і поліпшеною підтримкою сучасних веб-технологій.
Так, увімкнення SSL/TLS вкрай важливе під час налаштування підтримки HTTP/2 для забезпечення безпечного зв’язку між клієнтами і сервером. Шифрування SSL/TLS захищає конфіденційні дані від перехоплення і несанкціонованого доступу.
Хоча технічно можливо налаштувати підтримку HTTP/2 на старих версіях Ubuntu, як-от 16.04, для оптимальної сумісності та підтримки рекомендується використовувати Ubuntu 18.04 або новіше.
Ви можете перевірити, чи увімкнено HTTP/2 на вашому сервері Nginx, використовуючи такі інструменти, як curl або онлайн-сервіси тестування HTTP/2. Крім того, вивчення журналів сервера Nginx може дати уявлення про версію протоколу, використовуваного клієнтськими з’єднаннями.
Увімкнення підтримки HTTP/2 може потребувати трохи більше ресурсів сервера порівняно з HTTP/1.1 через підвищену складність протоколу. Однак переваги в продуктивності зазвичай переважують мінімальні витрати ресурсів.
Так, за необхідності ви можете повернутися до HTTP/1.1, змінивши параметри конфігурації Nginx. Однак перед внесенням будь-яких змін рекомендується ретельно протестувати сумісність і продуктивність вашого сайту.