Hvad er HTTP2? Den eneste guide, du har brug for til at konfigurere et hurtigere WordPress-websted

HTTP / 2 I maj 2015 blev det meddelt, at specifikationen for HTTP2 var blevet afsluttet og frigivet. HTTP2 tilbud betydelige præstationsfordele til ethvert websted, så i betragtning af at størstedelen af ​​webstederne er drevet af WordPress, var det kun et spørgsmål om tid, før vi havde brug for at vide, hvordan vi skulle konfigurere det, og hvad der er HTTP2.

Så her er vi med en komplet en komplet guide og / eller vejledning til, hvad HTTP2 er, hvorfor du skal aktivere HTTP2 på din hjemmeside, hvad er fordelene og endelig - hvordan man rent faktisk gør det.

 

Så lad os starte med de første par ting.

Hvad er HTTP2?

HTTP2 er den nyeste version af HTTP (HyperText Transfer Protocol), der er optimeret på en sådan måde, at dit websted indlæses meget hurtigere uden nogen ekstra indsats fra din side. Når du har konfigureret HTTP2, er der ikke behov for sådanne optimeringer som minifikation, kombination og andre hacks, vi plejede at udføre før - disse er indbygget lige i selve protokollen.

(På CollectiveRay, vi kan godt lide at lave vores websteder smuk og hurtigt!) 

Før vi rent faktisk kommer ned til HTTP2, lad os se lidt tilbage på HTTP, og hvorfor en ny version af HTTP var nødvendig.

Hvad er HTTP?

HyperText Transfer Protocol (aka HTTP) er simpelthen en måde, hvorpå din browser kommunikerer med webserveren på det websted, du besøger.

Der er mange måder, hvorpå to (eller flere) maskiner kommunikerer over Internettet. HTTP er den, der bruges til at gennemse websteder. Med stigningen af ​​sådanne websteder som YouTube og Twitch, der bærer meget trafik via HTTP, forbliver denne protokol en, der bærer mest trafik. Det er bestemt den, der er mest "synlig", da den er involveret i al browsing på hjemmesiden.

Når alt kommer til alt, hvor mange gange skriver du https: // hver eneste dag?

http

Uden at gå for meget i detaljer bruges HTTP-protokollen af ​​den besøgendes browser til at anmode om alt indholdet på et websted.

Samtalen går sådan her:

browser: Hej server på www.collectiveray.com - kan du give mig indholdet på dette websted?

Server: Hej browser, dette er HTML -indholdet på www.collectiveray.com

<html xmlns: og="https://ogp.me/ns#" xmlns: fb="https://www.facebook.com/2008/fbml" Lang="da-dk" dir="ltr" klasse='com_content visningsartikel itemid-388 j35 mm-svæver'>

...

browser: Godt, nu ser jeg, at jeg også har brug for indholdet af disse js-filer: collectiveray. Js, jquery.min.js, jquery-ui.min.js ... og også indholdet af disse filer: styles.css, jquery.min.css, ... Send mig også følgende billeder: favicon.ico, Logo.jpg, blog-header.jpg, annonce1.jpg...

Server:

  1. Her er indholdet af filen collectiveray. Js
  2. Og her er indholdet af filen jquery.min.js
  3. Og her er jquery-ui.min.js
  4. ...
  1. og her er billedet footer-icon.jpg ...

Virkelig og sandt spiller serveren og browseren digital tennis med dataene fra det websted, du besøger.

Hvert frem og tilbage fra serveren sender en lille del af hjemmesiden. Dette fortsætter, indtil alt indholdet sendes fra webserveren til browseren.

En anden meget god analogi, der er blevet brugt til at beskrive HTTP1, er, at en tjener henter drikkevarer fra baren og kun får en drink hver eneste gang de besøger baren.

http11

Selvfølgelig er denne metode til at få en "ting" ad gangen ikke meget effektiv, og her er hvor problemerne med HTTP starter ...

Internettet er vokset hurtigere end mulighederne i HTTP

HTTP har eksisteret i meget lang tid. Da det blev gennemtænkt og oprettet, var Internettet et helt andet sted.

Båndbredde blev målt i bits, ikke snesevis af megabit. For at være anvendelige blev websteder derfor primært lavet af tekst og hyperlinks. Billederne var få og langt imellem.

Hurtigt frem til moderne tid.

Hjemmesider, temaer og alle former for funktionalitet har gjort websteder tungere og tungere med hensyn til ressourcer. Dit gennemsnitlige websted indeholder hundredvis af forskellige filer og billeder.

Hjemmesider, der har brug for hundredvis af ressourcer, er dagsordenen.

For eksempel, hvis du planlægger at oprette et WordPress-medlemskabswebsted ved hjælp af denne vejledning skrevet af CollectiveRay, skal du bruge medlemskabstemaer, plugins og masser af andre ressourcer, som alle har brug for forskellige ressourcer for at kunne fungere korrekt.

For at komplicere sagen anmoder hvert websted om oplysninger fra flere forskellige servere til alle slags tredjeparts-scripts (for eksempel Google Analytics-scripts, Facebook-deleknapper, Google Ads eller AdSense, e-mailmarketing og alle mulige andre platforme).

Antallet af gange, en browser har brug for for at hente filer fra websideserverbehov, fortsætter med at vokse og vokse. 

Dette er ikke et problem i sig selv, selvom det stadigt stigende antal filer betyder, at størrelsen på de data, der downloades, fortsætter med at vokse og vokse.

Dette betyder, at den store mængde data, der skal downloades, bliver større og større. Dette gør indlæsning af websteder generelt langsommere.

For at gøre tingene værre, er oprettelse af en forbindelse mellem browseren og serveren en teknisk dyr drift og tager tid. Da antallet af forskellige ressourcer, der kræves på et websted, vokser, øges også tiden det tager at indlæse et websted.

Dette skyldes, at brug af HTTP-version 1, hver gang der er behov for en ny fil, skal der oprettes en ny (dyr) forbindelse.

Dette betyder, at websteder, der havde ønsket at indlæse hurtigt, måtte gennemgå en hel optimeringsøvelse.

Sådan oprettes et websted hurtigere (pre-HTTP2-version)

Som det kan ses gennem vores enkle eksempel, havde HTTP v1 en række begrænsninger i betragtning af den aktuelle tilstand på internettet, hvilket resulterede i, at websteder blev langsomme. Nu har du sandsynligvis set hundredvis af artikler, der viser dig, hvordan du laver din WordPress-webstedet hurtigere.

Vi har også sådan en artikel, fordi som WordPress-udviklere, vi jagter altid behovet for hastighed - og vi er kun glade, når vi når A-hastighed.

I øvrigt indeholder vi masser af forskellige artikler til dem, der ønsker at lære om WordPress, se afsnittet tutorials om Collectiveray.

Hvad de fleste af disse artikler, der søger at fremskynde WordPress, er at finde en måde at omgå begrænsningerne ved HTTP1. De udfører løsninger for at sikre, at webstederne ikke bliver bremset af alle disse forbindelser.

Dette var grunden til, at der var et så presserende behov for HTTP2, ikke kun for WordPress, men for alle andre websteder derude. Noget skulle gøres for at håndtere de iboende problemer med HTTP1 (både i browseren og på webserverniveau).

Så hvad var løsningerne / løsningerne for at lave et websted ved hjælp af HTTP v1 hurtigere? Vi henviste typisk til dem som Reducer, Genbruge, Genbruge. For mere forklaring på det, foreslår vi, at du læser vores artikel om at gøre websteder hurtigere ovenfor.

  1. Opret et let websted, der bruger en minimal mængde JS-, CSS- og billedfiler
  2. Reducer antallet af anmodninger til forskellige CSS-filer og JS-filer ved at kombinere så mange af disse filer sammen som muligt (reducere anmodninger gennem kombinationen af ​​filer)
  3. Reducere antallet af anmodninger om billeder med skabe et billede, der kombinerer dem alle i en og ved hjælp af CSS sprites
  4. Fjern eventuelle ekstra plugins (for at reducere antallet af billeder, CSS-filer og JS-filer, de føjer til webstedet)
  5. Komprimering af de krævede data så det er mindre i størrelse (og dermed hurtigere at transportere) (f.eks. ville du typisk gøre det aktiver WordPress GZIP-komprimering for at gøre størrelsen på data, der skal overføres, mindre)
  6. Udnyt browsercaching i WordPress ved hjælp af et plugin, sådan at hvis en bruger besøger dit websted igen inden for en kort tidsramme, har de ikke download af de samme filer igen
  7. Andre handlinger ...

I det væsentlige ønskede vi at reducere antallet af separate anmodninger mellem serveren og browseren. Vi ønskede også at reducere størrelsen på disse anmodninger.

Optimer website http1 ved at minimere http-anmodninger

Så hvordan forbedrer HTTP / 2 alt dette?

Indtast HTTP / 2

HTTP / 2 blev skrevet med det formål at løse disse iboende problemer. Et af de primære mål for HTTP2 er at

Sænk ventetiden for at forbedre sideindlæsningshastigheden i webbrowsere. (Kilde: Wikipedia)

og introducerer følgende forbedringer

  • er binær i stedet for tekst
  • er fuldt multiplekset i stedet for bestilt og blokeret
  • kan derfor bruge en forbindelse til parallelisme
  • bruger headerkompression for at reducere omkostningerne
  • tillader servere at "skubbe" svar proaktivt ind i klientcacher

Vent, hvad? Bare rolig - lad os prøve at forklare dette lidt i enklere termer.

  1. Binær i stedet for tekst: dette er noget, der gør overførsel og analyse af data meget mere effektiv. Binær dataoverførsel er også meget less tilbøjelige til fejl. Tekstdata er beregnet til konsum. Binære data er designet til maskinforbrug, at bruge binært til overførsel af data er iboende hurtigere.

  2. Fuldt multiplekset: igen, ganske enkelt, med HTTP var problemet, at hver forbindelse var tilbøjelig til at blokere de forbindelser, der skal ske efter den. Forestil dig dig selv i køen for at komme ind i din foretrukne sportskamp, ​​men i stedet for at have flere indgangspunkter, havde du kun 1 drejeknap. Du kan forestille dig, at tingene kan blive meget meget langsomme. Multiplexing gør det muligt at overføre flere filer og anmodninger på samme tid. I eksemplet med fodboldkamp, ​​i stedet for at have en person ad gangen, har vi 10 porte, hvor 10 turnstiles går ind sammen.

  3. Brug en forbindelse til parallelisme: som vi nævnte før, når en forbindelse er dyr at oprette, hvis du fortsætter med at oprette og lukke den for hver ressource, du har brug for, vil du oprette et alvorligt overheadproblem. Multiplexing gør det muligt at genbruge den samme forbindelse igen og igen. Forestil dig forbindelsen som et rør, gennem hvilket data fortsætter med at flyde, indtil du ikke har flere data. Bemærk også, at for ethvert websted vil du typisk have browseren til at tale med flere webservere til forskellige tredjeparts-scripts og ressourcer (Facebook-delingsscript, Twitter, Google Analytics, Annoncenetværk osv.) Har en forbindelse til hver af disse er mere effektiv.

  4. Header-komprimering er også en anden effektiv måde at fjerne flere af omkostningerne forbundet med at skulle hente flere forskellige ressourcer fra den samme eller flere webservere. Endnu en gang, typisk snarere end at skulle udføre flere frem og tilbage ture, er en tur typisk nok.

  5. Tillader servere at skubbe ressourcer proaktivt: dette er en måde, hvorpå serveren snarere end at vente på, at klientbrowseren anmoder om de forskellige ressourcer i henhold til vores første eksempel, proaktivt sender ressourcer, som browseren i sidste ende har brug for eller beder om. Dette kaldes HTTP / 2 Server push.

Hvis vi skulle vende tilbage til analogien med tjeneren, der bragte en drink ad gangen, er den største fordel, at tjeneren nu bruger en drikkebakke til at tage alle drikkevarer sammen. Og de tager også drinks fra baren, som de sandsynligvis har brug for, når de er i restauranten.

http vs http2

Hvad er SPDY? (aka Speedy)

Før HTTP2 faktisk blev født, havde en anden faktisk forsøgt at løse problemerne med HTTP. Dette var et forskningsprojekt af et par Google-ingeniører, der havde forsøgt at løse nogle af problemerne med HTTP1.1.

SPDY mål var at

  • Tillad multiplexing for at tillade samtidige anmodninger - og løs derefter problemer med latens oprettet ved at have flere forbindelser
  • Prioriter ressourcer som de vigtigste ressourcer på et websted, der sendes først
  • Komprimer HTTP-headere for at forbedre effektiviteten som beskrevet ovenfor
  • Implementere server push som diskuteret ovenfor også

I en indledende blog udgivet af ingeniørerne, der skrev protokollen, blev det hævdet, at det ville gør internettet 2 gange hurtigere. Selvom både store browsere og store webservere understøttede SPDY, var der kun lidt reel vedtagelse.

Imidlertid var dets forskning kritisk for den eventuelle frigivelse af HTTP2, da det første udkast til HTTP2 brugte SPDY som arbejdsbase.

Hvad skal jeg gøre for at aktivere HTTP / 2?

Før du aktiverer HTTP2, skal du vide, hvilke konsekvenser der er på dit websted.

Hvilke browsere understøtter HTTP / 2?

I skrivende stund understøtter de mest populære klientbrowsere fuldt ud HTTP/2. FireFox, Chrome og browsere baseret på Blink (dvs. Opera og Yandex) understøtter HTTP2. Microsoft Edge understøtter også HTTP2, mens Apple understøtter det også på Safari. Statistik fra sådanne websteder som Kan jeg bruge? viser, at den nuværende support global distribution er på mere end 95%. 

Hvis browseren ikke understøtter HTTP2, og hjemmesiden understøtter HTTP2, vil der være et yndefuldt tilbagefald til HTTP1, så der er absolut ikke noget problem for enhver besøgende, hvis du aktiverer HTTP / 2. Der kan kun være fordele.

kan jeg bruge http2

Hvilke servere understøtter HTTP / 2

Apache, Nginx, LiteSpeed, IIS og mest populære serverimplementeringer understøtter HTTP / 2 - du kan kontrollere, om din yndlingswebserver eller den webserver, du bruger, understøtter http2 her.

Om du kan bruge HTTP2, afhænger dog faktisk af, om dit hostingfirma har aktiveret dette. Så du bliver nødt til at bekræfte den faktiske tilgængelighed af HTTP / 2 med dit hostingfirma. Billedet nedenfor er en liste over servere, der understøtter http / 2. 

http2 server support

Kort sagt, om dit websted i øjeblikket understøtter HTTP / 2 afhænger helt af dit hostingfirma eller den server, hvor du er vært for dit websted. Vi bruger InMotion-hosting (og her er vores InMotion hosting anmeldelse og i det væsentlige hvordan vores VPS billetpriser), som har understøttet HTTP2 fuldt ud i et antal år nu.

Vi bruger dog også StackPath til at betjene vores ressourcer, som også understøtter HTTP / 2.

De fleste hostingfirmaer understøtter i dag HTTP2 på deres servere, så dette burde ikke være en bekymring.

Du kan bruge dette værktøj fra KeyCDN for at afgøre, om dit websted i øjeblikket har understøttelse af HTTP / 2. Denne HTTP / 2-test kan fortælle dig, om du har brug for at udføre yderligere handlinger eller ej.

Dit websted skal være sikkert for at aktivere HTTP2

I øjeblikket understøtter alle browsere derude kun krypteret HTTP2.

Dette betyder, at for at dit websted skal kunne understøtte HTTP / 2, skal du have dit websted serveret over en sikker (TLS / SSL) forbindelse. Vi har gennemgået dette ganske dybt i vores artikel om opsætning af et sikkert WordPress-certifikat på din server.

For at rekapitulere dog

  1. Sikre websteder får et SEO-ranking signal boost
  2. De beskytter de data, der overføres til og fra webstedet (især vigtigt for adgangskoder, kreditkortdata og andre følsomme data)
  3. Der er en stærk bevægelse mod fulde sikre websteder, og hvis du ikke implementerer sikkerhed på dit websted, vil dit websted sandsynligvis blive efterladt

Du bliver nødt til at erhverve et sikkert certifikat via dit hostingtjenestefirma. Hosting virksomheder som f.eks I bevægelse tillad dig at bruge et delt certifikat, men hvis du vil bruge det med dit domæne, anbefales det stærkt, at du køber dit eget certifikat. 

Brug for hjælp til dit websted?

Ansæt en kontrolleret webstedsekspert for så lidt som $ 65. Tilmeld dig i dag for at begynde at chatte gratis.

Chat med en ekspert

Andre sider såsom WordPress.com (i modsætning til WordPress.org) - læse om forskellen her - lever allerede sikre certifikater.

Installation af certifikatet er noget, der typisk udføres af din hosting-server. Det er en engangs ting, så du behøver ikke bekymre dig.

Når det er gjort, skal du blot udføre en 301 permanent omdirigering via din .htaccess-fil.

Endnu en gang er værter som f.eks InMotion-hosting kan håndtere alt dette for dig, hvis du ikke er tilbøjelig til at foretage denne form for teknisk tilpasning af dig selv (som har en smule risiko for nedetid, hvis du ikke gør det rigtigt).

Er der et plugin, jeg kan bruge til HTTP2?

Vi nævnte en af ​​fordelene ved at bruge HTTP2 for at være evnen til at udføre et server push af emner, der er nødvendige af browseren. Dette er selvfølgelig noget, der skal gøres på CMS-niveau, så dette har brug for support fra WordPress eller dit foretrukne CMS.

Selvom dette endnu ikke understøttes på kerneniveau, kan du tilpasse dine temaer eller plugins, så de implementerer muligheden for at sende en 

Link:<...> rel="prefetch"

header for hvert afskrevet script og stil, når WordPress sender dem til sidekilden.

Hvis du ønsker at gøre dit websted hurtigere generelt, hvilket gør det muligt for prefetch og andre kommandoer at gøre dit websted hurtigt, vil vi varmt anbefale WP Rocket - et premium plugin, der væsentligt øger hastigheden på dit websted. Hvis du vil have et gratis plugin, kan du bruge det denne

Tjek WP Rocket for at gøre dit websted hurtigere

Dette tager faktisk yderligere reel fordel af de funktioner, der er aktiveret af HTTP / 2.

Endelig anbefaling

Så du er her, fordi du ville gøre dit websted hurtigere ved at sætte HTTP2 på plads, ikke? 

Dette er kun en af ​​mange måder at gøre dit websted hurtigere. Udover denne teknologi skal du udføre en masse andre optimeringer, hvis du vil gøre dit websted hurtigere, f.eks

  • Implementér et sidecaching-plugin
  • Aktivér caching på PHP-niveau, f.eks. OpCache
  • Optimer billeder til ydeevne
  • Aktivér et CDN (gratis eller på anden måde)
  • Aktivér browsercaching og gzip-komprimering
  • Optimer Google-skrifttyper
  • Aktivér DNS-forudhentning
  • Aktiver billede doven indlæsning
  • Aktivér minifikation og sammenkædning
  • osv osv

Lyder som en masse arbejde, ikke? Det er!

At CollectiveRay, bruger vi nogle gange adskillige dage arbejder på at skubbe vores hjemmeside bare et par brøkdele af et sekund hurtigere. Dette skyldes, at vores websted kører på Joomla, så vi har ikke mange af de plugins, der er tilgængelige for andre populære CMS-muligheder såsom WordPress.

For eksempel installerer vi altid for vores kunder WP Rocket. På de websteder, hvor det installeres, får vi dem altid til at indlæse på under 3 sekunder, hvor typiske resultater er, at hjemmesiden indlæses på under 1 sekund.

Hastighedstest før efter

Det skønne ved det dog, at vi ikke behøver at udføre noget af det manuelle arbejde, vi tidligere havde gjort, så vi spar timer af tid og frustration, og vi får fremragende resultater at starte.

Tjek WP Rocket for at gøre dit websted hurtigt 

Ofte stillede spørgsmål

Skal jeg bruge HTTP2?

Ja, du skal aktivere og bruge HTTP2 på dit websted, hvis du kan. HTTP2 vil gøre dit websted hurtigere, og der er absolut ingen ulemper i forhold til HTTP-version 1. Selvom en klient bruger en gammel browser, der ikke understøtter HTTP2, er der en yndefuld tilbagegang til HTTP.

Hvad er forskellen mellem HTTP og HTTP2?

Der er en række forskelle og forbedringer mellem HTTP og HTTP2. HTTP2 er binær, i stedet for tekstmæssig, hvilket gør det iboende hurtigere. Det er fuldt multiplekset i stedet for bestilt og blokering, så flere forbindelser kan bruges samtidigt. Det bruger komprimering af header for at reducere overhead og giver servere mulighed for at "skubbe" svar proaktivt ind i klientcacher. Alle disse forbedringer gør HTTP2 meget hurtigere end HTTP.

Kræver HTTP2 SSL?

Ja, HTTP2 understøttes kun i krypteret tilstand, så dit websted skal også implementere sikre SSL / TLS-certifikater for at kunne bruge HTTP2.

Understøtter browsere HTTP2?

Over 95% af de webbrowsere, der er i brug i dag, understøtter HTTP2. Selvom browseren ikke understøtter HTTP2, vil der være en yndefuld tilbagegang til HTTP.

 

 

Konklusion: Lad os gøre internettet hurtigere med HTTP2 

At CollectiveRay, har vi altid været fikseret på at gøre vores websteder hurtige. HTTP2 er en evolution og en revolution på samme tid, og vi håber virkelig, at denne artikel hjælper dig med at komme videre mod din opsætning af WordPress HTTP2.

Efterlad en kommentar nedenfor og fortæl os, hvad du ellers gerne vil vide.

 

Brug for hjælp til at få ting gjort? Prøv disse topbedømte overkommelige koncerter på Fiverr!

fiverr logo

Klik her for at finde eksperter på WordPress-hastighedsoptimering.

Klik her for at oprette et komplet WordPress-websted.

 

Om forfatteren
David Attard
Forfatter: David AttardInternet side: https://www.linkedin.com/in/dattard/
David har arbejdet i eller omkring online / digital industri i de sidste 18 år. Han har stor erfaring inden for software- og webdesignindustrien ved hjælp af WordPress, Joomla og nicher, der omgiver dem. Som digital konsulent er hans fokus på at hjælpe virksomheder med at få en konkurrencemæssig fordel ved hjælp af en kombination af deres hjemmeside og digitale platforme, der er tilgængelige i dag.

En ting mere... Vidste du, at folk, der deler nyttige ting som dette indlæg, også ser FANTASTISKE ud? ;-)
Vær venlig forlade a nyttigt kommenter med dine tanker, så del dette på din Facebook-gruppe (r), der ville finde det nyttigt, og lad os høste fordelene sammen. Tak fordi du delte og var god!

Afsløring: Denne side kan indeholde links til eksterne websteder for produkter, som vi elsker og helhjertet anbefaler. Hvis du køber produkter, vi foreslår, tjener vi muligvis et henvisningsgebyr. Sådanne gebyrer påvirker ikke vores anbefalinger, og vi accepterer ikke betalinger for positive anmeldelser.

Forfatter (e) Fremhævet den:  Inc Magazine-logo   Sitepoint-logo   CSS Tricks-logo    webdesignerdepot logo   WPMU DEV-logo   og mange flere ...