ДТ РАБОТИЛНИЦА

Регистрирайте безплатен акаунт днес, за да станете член! След като влезете, ще можете да участвате в този сайт, като добавяте свои собствени теми и публикации, както и да се свързвате с други членове чрез вашата лична пощенска кутия!

  • Здравейте, майстори на заваряването, кодирането и автомобилните технологии!

    Аз съм Тони Ангелчовски, създател на dtgarage.eu - вашата нова дигитална работилница. С визията за място, където можем да обменяме идеи, да се обучаваме и да растем заедно, dtgarage.eu събира любители и професионалисти от света на заваряването, автомобилите, IT и уеб кодирането.

    В dtgarage.eu, ние сме общност, която е готова да помага и подкрепя всеки свой член. Ние вярваме, че всеки от нас може да допринесе за развитието на тази платформа, независимо дали е професионалист или ентусиаст.

    Само една стъпка ви дели от това да станете част от нашата общност - регистрацията. Регистрирайте се сега и открийте света на dtgarage.eu - мястото, където можем да създаваме и растем заедно.

    Приключението започва тук. Добре дошли в DTGARAGE.EU!

Урок Как да активирате HTTP/2 в Apache Web Server на Ubuntu и Debian

Как да активирате HTTP/2 в Apache Web Server на Ubuntu и Debian

Hypertext Transfer Protocol Version 2 ( HTTP/2 ) е най-новата версия на HTTP протокола, публикувана като IETF стандарт в RFC 7540 през 2015 г. Фокусът на протокола е върху производителността; по-конкретно възприеманата от крайния потребител латентност, използване на мрежови и сървърни ресурси. Една от основните цели е да се позволи използването на една връзка от браузъри към уеб сайт. Протоколът е обратно съвместим, така че HTTP методите, кодовете на състоянието и семантиката са същите като при предишните версии на протокола. Apache поддържа HTTP/2 от версия 2.4.17. В този урок ще приема, че вече имате работеща TLS конфигурация и че имате инсталирана необходимата версия на Apache на избраната от вас Linux дистрибуция и че знаете как да използвате Let's Encrypt или знаете как да издаване на само подписан сертификат.

apache-server.png

Този урок е тестван на Debian 11 , Debian 10, Debian 9, Ubuntu 22.04 LTS , Ubuntu 20.04 LTS и Ubuntu 18.04 LTS.

Предпоставки


За да активирате HTTP/2 в Apache, ще трябва да изпълните следните изисквания:

  • Първо, трябва да активирате HTTPS на вашия сървър. Всички основни браузъри позволяват използването на HTTP/2 само през HTTPS. Освен това е необходима версия на протокола TLS >= 1.2 с модерни пакети за шифроване.
  • След това се уверете, че използвате Apache 2.4.17 или по-нова версия, защото HTTP/2 се поддържа от тази версия и нагоре.
  • Също така се уверете, че вашият клиент/браузър действително поддържа HTTP/2.
Деактивирайте модула mod_php

Преди да можем да превключим модула Apache MPM в следващата стъпка към mpm_event, ще трябва да деактивираме стария режим mod_php и да го заменим с по-модерния режим PHP-FPM. Командите се различават за всяка версия на операционната система, моля, използвайте тези, които отговарят на вашата инсталирана система.

Ubuntu 22.04 LTS
Code:
sudo apt-get install php8.1-fpm
sudo a2dismod php8.1
sudo a2enconf php8.1-fpm
sudo a2enmod proxy_fcgi

Debian 11
Code:
sudo apt-get install php7.4-fpm
sudo a2dismod php7.4
sudo a2enconf php7.4-fpm
sudo a2enmod proxy_fcgi

Ubuntu 20.04 LTS
Code:
sudo apt-get install php7.4-fpm
sudo a2dismod php7.4
sudo a2enconf php7.4-fpm
sudo a2enmod proxy_fcgi

Debian 10
Code:
sudo apt-get install php7.3-fpm
sudo a2dismod php7.3
sudo a2enconf php7.3-fpm
sudo a2enmod proxy_fcgi

Ubuntu 18.04 LTS
Code:
sudo apt-get install php7.2-fpm
sudo a2dismod php7.2
sudo a2enconf php7.2-fpm
sudo a2enmod proxy_fcgi

Debian 9
Code:
sudo apt-get install php7.0-fpm
sudo a2dismod php7.0
sudo a2enconf php7.0-fpm
sudo a2enmod proxy_fcgi

Enable an Apache MPM that is compatible with HTTP/2

По подразбиране Apache ще използва prefork MPM. Този MPM не е съвместим с HTTP/2, така че ще трябва да го заменим с по-модерния модул mpm_event.

Първо деактивираме модула mpm_prefork:
Code:
sudo a2dismod mpm_prefork

След това активираме модула mpm_event:
Code:
sudo a2enmod mpm_event

Активирайте поддръжката на HTTP/2 в Apache

За да накарате HTTP/2 да работи на Apache , трябва да активирате и заредите SSL и HTTP/2 модули. За да направите това, можете да изпълните следното във вашия терминал:
Code:
sudo a2enmod ssl
и тогава
Code:
sudo a2enmod http2

За да активирате тези нови модули, трябва да изпълните:
Code:
sudo systemctl restart apache2

След като активирате и заредите необходимите модули на Apache, отидете до вашата конфигурационна директория на Apache и редактирайте конфигурацията на Apache.

За да активирате HTTP/2 на вашия уеб сървър на Apache, добавете едно от следните към вашата глобална конфигурация на Apache или вътре в определен виртуален хост.
Протоколи h2 http/1.1

Ето минималната конфигурация на виртуален сървър, която може да се използва за активиране на HTTP/2 в някои виртуални хостове:

Code:
<VirtualHost _default_:443>
                ServerAdmin [EMAIL]info@mysite.com[/EMAIL]
                DocumentRoot /raid/www/mysite
                ServerName mysite.com
                ServerAlias [URL='http://www.mysite.com']www.mysite.com[/URL]
                SSLCertificateFile     /etc/letsencrypt/live/mysite.com/fullchain.pem
                SSLCertificateKeyFile /etc/letsencrypt/live/mysite.com/privkey.pem
                Include /etc/letsencrypt/options-ssl-apache.conf
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
###############################  HTTP2  ###########################
  [B]SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
  Protocols h2 http/1.1[/B]

</VirtualHost>
 
Last edited by a moderator:
Top Bottom