HTTP/2 toe aktiveerimine DirectAdminis (CentOS)

HTTP/2 on HTTP-protokolli uusim versioon, mis põhineb SPDY-l. Selle väljatöötamise algatas Google ja HTTP/2 põhineb suuresti SPDY koodibaasil ja kontseptsioonidel.

SPDY on nüüdseks aegunud ja HTTP/2 ülemaailmne kasutuselevõtt on pooleli. Paljud hostimisettevõtted on HTTP/2-le selle lisakiiruse tõttu juba tuge pakkunud.

Kirjutamise ajal ei paku DirectAdmin HTTP/2 lubamiseks ühe klõpsuga võimalust. Siiski on HTTP/2 toe saavutamiseks mitu võimalust. Allpool kirjeldatud meetod on osutunud kõige tugevamaks ja stabiilsemaks lähenemisviisiks.

HTTP/2 jõustumiseks tuleb mitut komponenti värskendada. Seetõttu soovitan tungivalt teha hetktõmmis. Võimaluse korral järgige seda juhendit täiesti uues serveris.

See juhend koosneb kahest osast: HTTP/2 toe lubamine veebiserveris (Apache) klientidele (külastajatele) ja HTTP/2 aktiveerimine cURL-is. HTTP v2 lubamine cURL-i jaoks sunnib teie serverist pärinevad cURL-i päringud võimaluse korral kasutama oma sihtserverites HTTP/2.

Võtmepunktid

  • HTTP/2 kasutamiseks pole vaja nii Apache'i kui ka cURL-i värskendada. On hea, kui järgite kumbagi juhendit, kuna need toimivad üksteisest eraldi.
  • On olnud paar kummalist juhtumit, kus Apache ja HTTP/2 näivad hästi toimivat, kuid laadimine õnnestub "juhuslikes" brauserites ja saidid muutuvad teiste jaoks kättesaamatuks (ajalõpp). Lihtsalt algse Apache konfiguratsiooni naasmine parandab selle, kuna Apache ei tea HTTP/2-st ega ürita selle kaudu sisu edastada.
  • Tehke alati eelnevalt varukoopia või hetktõmmis. HTTP/2 lubamine võib olla suhteliselt habras protsess, mistõttu on oluline, et oleks võimalik vajadusel muudatusi tagasi võtta.
  • Tarkvara ümberkompileerimine võib alati põhjustada kergeid seisakuid. Mõnel juhul on see alla minuti, kuid seda pole võimalik täpselt öelda. Peaksite olema valmis vähemalt mõneks seisakuks.
  • Selle juhendi jaoks vajate juurjuurdepääsu serverile. Kui teil pole võimalust oma õiguste taset juurtasemele tõsta, peaksite HTTP/2 lubamiseks serveris ühendust võtma serveri administraatoriga.

HTTP/2 ja SSL

Kuigi see ei ole HTTP/2 enda tehniline nõue, on enamikul juhtudel vaja HTTP/2 kasutamiseks SSL-sertifikaati. Nagu öeldud, HTTP/2 seda tehniliselt ei nõua, kuid paljud brauserid (Safari, Chrome, Firefox jne) on selle standardi loonud. Sisu ei edastata HTTP/2 kaudu, kui leht laaditakse nende brauserite abil ilma SSL-ita. Arvestades, et enamik kasutajaid kasutab neid (ja teisi) brausereid, mis samuti selles standardis osalevad, peaksite kasutama SSL-sertifikaati.

Kui otsite tasuta SSL-sertifikaati, peaksite vaatama üht meie Let's Encrypt juhendit:

Soovitatav: Let's Encrypt installimine DirectAdminisse

Alternatiivsed juhtpaneelid:

Üldised juhendid:

KKK

Kas see juhend dokumenteerib Brotli installimise?

Ei, selles artiklis ei ole kirjeldatud meetodit Brotli installimiseks HTTP/2 kõrval.

Kompileerimine ebaõnnestub põhjuseta ja olen järginud täpselt selles artiklis kirjeldatud samme. Kuidas seda lahendada?

Kuigi sellel on palju võimalikke põhjuseid, ei pruugi teie lokaadi sätted olla õiged, võttes arvesse erinevaid keskkondi ja muud sarnast. Proovige panna LC_ALL=Coma käsud ette, et Apache'i ümberkompileerimise käsk näeks välja näiteks järgmine: LC_ALL=C ./build apache Ärge unustage tühikut LC_ALL=Ckäsu ja käsu vahel!

Kas ma kaotan andmed?

Kui kasutate praegu pöördpuhverserveri seadistust, näiteks Apache'i ja Nginxiga, peaksite selle tagasi Apache'ile tagasi viima, sel juhul kaotaksite oma Nginxi konfiguratsioonifailid tõepoolest. Kui olete teinud kohandatud VirtualHosti konfiguratsioone (olgu see siis käsurea või DirectAdmini enda kaudu), peaksite neid domeenipõhiselt muutma, et Apache versioonid jääksid aktiivseks. Te ei kaota andmeid kasutajaandmete, veebisaidi sisu, andmebaaside jms kohta.

Kas need kohandatud versioonid takistavad mul tulevikus pakette ja tarkvara värskendamast?

Üldiselt pole selle pärast vaja muretseda. Võttes arvesse DirectAdmini modulaarset seadistust (ja seega ka CustomBuildi oma), peaks teil olema võimalik tulevikus ilma probleemideta minna alla või üle minna teistele tarkvaraversioonidele. Kuigi peaksite muudatused dokumenteerima juhuks, kui tulevikus on vaja alternatiivset täiendusteed, ei tohiks muretseda uute tarkvaraversioonide kokkusobimatuse pärast.

DirectAdmin ei paku HTTP/2 karbist välja; kindlasti tähendab see, et see ei ühildu või neil on põhjust mitte ühilduda. Miks on see lahendus vajalik?

Allpool kirjeldatud HTTP/2 installimise ja lubamise meetodid ei ole niivõrd lahendused, vaid pelgalt paketivärskendused ja konfiguratsioonimuudatused. DirectAdmini modulaarse seadistuse tõttu on need muudatused täiesti korras ega tohiks probleeme ega muid probleeme tekitada. On raske kindlaks teha, miks DirectAdmin seda kohe alguses ei toeta, kuna autorid pole sellele selgitust andnud. Siiski on üsna kindel järeldus, et DirectAdmin kasutab operatsioonisüsteemi versioonipakette. Need ei ole üldiselt nii ajakohased kui allolevad paketid. HTTP/2-l, tehnoloogial endal ja selle ühilduvusel pole midagi viga. Nagu paljudel muudel tehnoloogiatel, võib ka selle loomulikuks kohanemiseks kuluda veidi aega.

Millised on võimalikud riskid HTTP/2 aktiveerimisel Apache'iga?

HTTP/2 aktiveerimisel (mis koosneb uuendus- ja konfigureerimisprotsessist) on palju muutujaid, mis võivad osutuda mittestandardseteks. Suurim risk peitub siiski inimlikus eksimuses. Tehke eelnevalt hetktõmmis, teavitage hooldusest kindlasti oma kasutajaid (kui neid on serveris peale teie enda) ja olge ettevaatlik. Lisaks ärge kopeerige ja kleepige käske, mõtlemata sellele, mida nad kõigepealt teevad.

Soovitan tungivalt DirectAdminiga ajutiselt üles kerida eraldi Vultri pilveeksemplar ja sammud läbi teha. Kui värskel installimisel peaks midagi valesti minema, teate, kus ja kuidas seda siluda, et te ei peaks seda tootmiskeskkonnas tegema.

1. osa: Apache (veebiserver)

Kui kasutate praegu pöördpuhverserverit, peaksite lülituma tagasi ainult Apache-keskkonnale. Selle põhjuseks on asjaolu, et HTTP/2-d on väga raske siluda, kui midagi läheb valesti. Apache integreeritud HTTP/2 funktsionaalsuse kasutamisega saate tõhusalt kõrvaldada väga suure osa probleemidest.

1. toiming: OpenSSL-i täiendamine

Paljudel juhtudel ei ühildu teie OpenSSL-i versioon ALPN-iga, mis on vajalik HTTP/2 jaoks. Seetõttu lubame ALPN-i, värskendades OpenSSL-i.

Kõigepealt veenduge, et teie OpenSSL-i versioon ei ühildu, käivitades:

openssl version

Kui teie OpenSSL-i versioon on väiksem kui 1.1.0f, käivitage administraatorina järgmine toiming. Vastasel juhul jätkake sammuga 2.

cd ~
wget ftp://ftp.openssl.org/source/openssl-1.1.0f.tar.gz
tar xzf openssl-1.1.0f.tar.gz
cd openssl-1.1.0f
./config --prefix=/usr/local/lib_http2 no-ssl2 no-ssl3 zlib-dynamic -fPIC
make depend
make install

2. samm: nghttp2 installimine

HTTP/2 toimimiseks peame installima nghttp2. Nghttp2 on HTTP/2 (ja HPACK) teostus C-s. Nghttp2 on HTTP/2 kliendi, serveri ja puhverserveri kombineeritud versioon C-s.

Rakenduse nghttp2 installimiseks täitke järgmised käsud. Õnneks saab nghttp2 ehitada otse CustomBuildist.

cd /usr/local/directadmin/custombuild
./build update
./build nghttp2

3. samm: HTTP/2 lubamine Apache'is

Peame muutma Apache konfiguratsioonifailis mõnda väärtust, et see saaks kasutada HTTP/2. Kui veebiserver ei saa juhiseid alternatiivse HTTP-versiooni kasutamiseks, ei kasuta ta seda. Seetõttu peame konfiguratsioonifaili lisama HTTP/2.

Nende muudatuste jõustumiseks on vaja Apache uuesti koostada CustomBuildi kaudu. Kuna CustomBuildi tarkvara koostamisel kasutatavad parameetrid ja väärtused määratakse kindlaks spetsiaalses konfiguratsioonifailis, on parim tava lisada need muudatused spetsiaalsesse kohandatud konfiguratsioonifaili.

Märkus. Kui te neid muudatusi kohandatud faili ei lisa, kirjutatakse need tõenäoliselt üle ja teie seadistus katkeb. Palun järgige alltoodud juhiseid.

Faili loomiseks täitke järgmised käsud ja eeltäitke see vaikeväärtustega, et saaksime seda hiljem muuta:

mkdir -p /usr/local/directadmin/custombuild/custom/ap2
cp -p /usr/local/directadmin/custombuild/configure/ap2/configure.apache /usr/local/directadmin/custombuild/custom/ap2/configure.apache

Praeguse seisuga on meil kohandatud fail, mis on identne CustomBuildi kasutatava Apache vaikekonfiguratsioonifailiga. Peame /usr/local/directadmin/custombuild/custom/ap2/configure.apachefaili muutma , asendades järgmise stringi:

"--with-ssl=/usr" \

koos:

"--enable-http2" \
"--enable-ssl-staticlib-deps" \
"--with-ssl=/usr/local/lib_http2" \

Märkus. Veenduge, et pärast kaldkriipsu poleks tühikuid . Liigne tühimik põhjustab järgu katkemise.

Järgmisena ehitage Apache uuesti üles. CustomBuild kasutab teie äsja loodud kohandatud konfiguratsioonifaili:

./build apache

4. samm: Apache konfiguratsiooni muutmine

Apache on nüüd ümber ehitatud, sealhulgas HTTP/2 jaoks vajalikud moodulid ja sätted. See tähendab, et meie serverisse on nüüd installitud HTTP/2 toega Apache'i versioon, kuid me peame ütlema, et Apache kasutaks seda kõigepealt.

Lisage järgmised read /etc/httpd/conf/extra/httpd-includes.conf:

ProtocolsHonorOrder On
Protocols h2 h2c http/1.1

Salvestage need muudatused ja kirjutage konfiguratsioonifailid ümber, et need jääksid püsivaks ka ümberehituste ajal.

cd /usr/local/directadmin/custombuild
./build rewrite_confs

HTTP/2 peaks nüüd teie veebiserveris (Apache) aktiivne olema.

5. samm: taaskäivitage server

Taaskäivitage server, et veenduda, et meie muudatused jäävad püsima ka pärast taaskäivitamist. Taaskäivitage server Vultri juhtpaneeli kaudu või käivitades rebootkäsu.

6. toiming: testige HTTP/2

HTTP/2 funktsionaalsust saab hõlpsasti testida järgmise tööriista abil: HTTP/2 test

Arvestades, et HTTP/2 on serverispetsiifiline ja seda ei saa piirata teatud domeenide või veebisaitidega, peaks serverile või isegi serveri IP-aadressile osutava domeeninime sisestamine toimima.

Test ütleb teile, kas see suudab HTTP/2 kaudu veebiserverisse jõuda. Kui tööriist ütleb, et HTTP/2 on teie serveris aktiveeritud, pääseb DirectAdmini veebisaitidele nüüd kas HTTP/1.1 või HTTP/2 kaudu. Kui HTTP/2 tugi pole kliendi (külastaja) jaoks saadaval, naaseb brauser HTTP/1.1-le.

Kui tööriist ei pääse teie veebiserverisse HTTP/2 kaudu, järgige ülaltoodud samme uuesti. Üldiselt (kuna ülaltoodud sammud ei kirjuta aktiivselt midagi üle) ei kahjusta ega riku see teie seadistust.

2. osa: cURL

Soovitan cURL-i värskendada, et see jõuaks HTTP/2 toega serveriteni. Kui server HTTP/2-d ei toeta, naaseb see HTTP/1.1-le.

1. samm: kohandatud konfiguratsioonifaili lisamine

Nii nagu Apache puhul, loome kohandatud konfiguratsioonifaili, nii et CustomBuildi loodud cURL kasutab meie kohandatud sätteid.

Loo kataloog:

mkdir -p /usr/local/directadmin/custombuild/custom/curl

Loo fail:

touch /usr/local/directadmin/custombuild/custom/curl/configure.curl

Kopeerige ja kleepige faili järgmine sisu:

#!/bin/sh
perl -pi -e 's|CURL_CHECK_PKGCONFIG\(zlib\)|#CURL_CHECK_PKGCONFIG(zlib)|g' configure.ac
LIBS="-ldl" ./configure --with-nghttp2=/usr/local --with-ssl=/usr/local/lib_http2

Nagu näete, käsib see sisu cURL-il kompileerida lib_http2SSL-i teegi abil.

Salvestage fail ja andke sellele õiged õigused:

chmod 700 /usr/local/directadmin/custombuild/custom/curl/configure.curl

2. samm: looge cURL

Järgmiseks peame vaid looma cURL-i.

cd /usr/local/directadmin/custombuild
./build curl

cURL on nüüd koostatud HTTP 2 toega.

Jäta kommentaar

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit