7 Open Source-webservere til små til store websteder

Vi er nået langt siden den første webserver blev frigivet. Nu er der så mange flere spændende muligheder.

Forskellige projekter har forskellige behov, men open source webserverafdelingen var mere eller mindre et monopol. I lang tid var Apache den eneste mulighed, og håndtering af høje belastninger var en smerte i ryggen. Heldigvis har tiderne ændret sig, og nye løsninger er dukket op til specialiserede behov.

Så lad os tage et kig på nogle af de bedste og mest populære open source-webservere, der er tilgængelige i dag.

Apache

Det er næsten synonymt med World Wide Web og driver stadig de fleste websteder i verden.

Årsagen til Apaches dominans er tredelt: en åben licens, tidlig adgang (denne ting blev udgivet helt tilbage i 1995!) og nem implementering af PHP. Det sidste punkt blev muliggjort gennem mod_php-modulet, hvilket betød, at installation af Apache var alt, hvad du skulle gøre for at udvikle med PHP.

Her er hvad der gør Apache store:

  • Tilgængelig på alle platforme – Linux, Windows, MacOS og andre platforme.
  • Det er standardserveren for al CPanel-delt hosting, hvilket gør det nemt at oprette og ændre websteder.
  • Tonsvis af funktionalitet tilbydes gennem en stor samling af moduler. Uanset hvor uklare dine behov er, er der helt sikkert et eksisterende modul til Apache.
  • Konfiguration pr. mappe gennem .htaccess-filer.
  • Understøttelse af HTTP/2, komprimering, statiske filer og belastningsbalancering.
  • MPM- og FastCGI-tilstande for at levere høj samtidighed.
  • Nem scripting gennem Lua.

Er Apache noget for dig?

Kort sagt, ja. Der var et tidspunkt, hvor Nginx (som vi vil overveje næste gang) tog fart på grund af sin høje ydeevne, men Apache indhentede efter sin 2.2-udgivelse. Når det er sagt, som alle tidlige deltagere, tog Nginx en masse opmærksomhed, så du måske støder på noget (ugyldig) kritik af dets muligheder.

Nginx

Hvis du kan lide at drikke af “kool-aid” springvandet (eller for at være politisk korrekt, følg den “seneste” udvikling), er det sandsynligt, at du har hørt om Nginx (udtales som “engine-x”, som var tanken bag navnet). Det blev udgivet som et projekt i 2002 af en russisk ingeniør, der blev træt af de daværende løsningers manglende evne til at slå CK10 problem (dybest set, håndtering af tusindvis af samtidige forbindelser).

  Sådan fjerner du falske Apple-sikkerhedsalarmer

Da Nginx kom ud, lavede det så stort et sprøjt, at folk bare flyttede væk fra Apache og aldrig så sig tilbage. Og tendensen fortsætter i dag. Mens Apache uden tvivl er på niveau i dag, tilbød Nginx nogle fantastiske forbedringer, der hjalp den med at vinde.

  • Asynkron arkitektur til håndtering af høje belastninger
  • Klassens bedste statiske filhåndtering, belastningsbalancering og reverse proxy-funktioner.
  • FastCGI caching
  • Understøttelse af uwsgi, SCGI og andre serverprotokoller med caching.
  • Gzipping, billedtransformation, byte-intervaller, chunked-svar osv. med FLV- og MKV-streaming.
  • WebSockets, keepalive og pipelinede forbindelser
  • Adgangskontrol, fejlomdirigering mv.

Alt i alt er Nginx et kraftcenter med en masse funktioner, der holder det foran kurven. Da den underliggende virksomhed er en bæredygtig virksomhed, er betalt support og rådgivning tilgængelig for komplekse projekter, som kan være nyttige for nogle.

Er Nginx noget for dig?

Hvis du kan lide at bygge webapplikationer efter din smag, er Nginx et stort plus. Du kan designe komplicerede og distribuerede systemer med kraftfuld caching, proxy og belastningsbalancering, udover at bruge Nginx til at betjene statiske filer med flere optimeringer direkte.

Og ja – Nginx er HTTP/2 klar.

Interesseret i at lære Nginx? Tjek dette ud grundforløb.

Caddie

En af de hotteste nye rammer, der har fået sprøjt i open source-fællesskabet for nylig, er Caddie.

Tænk på Caddy som en Nginx-lignende webserver (lignende syntaks og det hele), men alt er forenklet til en behagelig ekstrem. For eksempel kan Let’s Encrypt-integration til SSL udføres på kun tre linjers konfiguration.

Her er grunden til, at Caddy tiltrækker masser af opmærksomhed:

  • HTTPS aktiveret som standard. Ja, du behøver ikke at gøre noget for at installere eller forny SSL-certifikater.
  • HTTP/2 får primært fokus.
  • Roterer TLS session billet nøgler som standard. Dette giver en meget mere sikker TLS-forbindelsesadministration, der ikke er sårbar for folk som Heartbleed.
  • Ingen afhængigheder (det er en Golang-kompileret binær kodebase, der ikke afhænger af nogen underliggende systembiblioteker)
  • Serverer som standard statiske filer i den aktuelle mappe!
  • Integrerbar — kan bruges som et bibliotek i andre programmer
  Sådan inkluderes billedtekster i Microsoft Excel-grafer

Er Caddy noget for dig?

Hvis du tørster efter enkelhed og bliver afskrækket af de stumpe konfigurationer som Apache og Nginx, vil Caddy føles som en brise af frisk luft. Når det er sagt, fungerer det bedst, når du er tilfreds med standardindstillingerne. For eksempel, hvis du vil bruge din SSL-udbyder, skal du have en separat mappe til statiske filer (hvilket næsten altid er tilfældet), og så videre, forsvinder fordelene.

Du kan få Caddie på Kamatera VM fra så lavt som $4 pr. måned.

Lyshttpd

Det ene område, hvor de fleste moderne webservere fejler, er ressourceforbrug. Lyshttpd blev designet til at overvinde disse udfordringer i miljøer med lav hukommelse og lav CPU.

Lighthttpd er bygget på den asynkrone anmodningshåndteringsmodel og afspejler derfor i det væsentlige, hvordan Nginx fungerer. Men der er en hake – Lighthttpd fungerer i en enkelt tråd, så hvis du har en mere dygtig maskine, vil den ignorere andre CPU-kerner. Det mangler også de mere avancerede funktioner i Nginx, såsom SSL-proxy, HTTP/2 og lignende.

Er Lighthttpd noget for dig?

Lighthttpd er en dygtig, single-threaded webserver, der nemt kan håndtere et par hundrede anmodninger i sekundet og stadig gå let på systemressourcer. Bortset fra det har den ikke meget at byde på sammenlignet med alternativerne. Så måske hvis du ikke har brug for alle klokker og fløjter – og virkelig, virkelig sveder efter maskinressourcer – er Lighthttpd værd at udforske.

MonkeyServer

På trods af det mærkelige navn Abe webserver er et interessant projekt, der fortsat aktivt udvikles og understøttes.

Hovedattraktionen ved MonkeyServer er understøttelsen af ​​indlejrede platforme. Du skal selv kompilere serveren, men du kan presse alle dikkedarerne ud og ende op med en let, hurtig webserver.

  • Målretter primært Linux, men understøttes også på MacOS
  • Fuld understøttelse af ARM-baserede processorer
  • Fungerer perfekt på Android, Raspberry Pi og andre indlejrede platforme
  • Minimal køretid (100 KB uden plugins)
  • Understøtter IPv6 og TLS
  • Fungerer med CGI og FastCGI
  • Grundlæggende autentificering, sikkerhedsregler mv.
  Sådan opretter og deler du placeringssamlinger i Apple Maps

Er MonkeyServer noget for dig?

Hvis du vil målrette mod indlejrede enheder, er MonkeyServer stort set, hvad du har brug for. Når det er sagt, fungerer det lige godt på x86- og x86-64-arkitekturerne og kan bruges til at køre store applikationer på kraftfulde maskiner. Det har et meget mere aktivt og levende fællesskab end andre alternative webservere, så du er aldrig tabt, hvis du har brug for hjælp.

OpenLiteSpeed

OpenLiteSpeed er open source-varianten af ​​virksomhedens webserver, der tilbydes af LiteSpeed ​​Technologies.

Der er mange grunde til at kunne lide OpenLiteSpeed:

  • Kompatibel med Apaches mod_rewrite, hvilket betyder, at hvis du har et væld af eksisterende Apache-filer, vil migrering være minimal smerte.
  • Hændelsesdrevet arkitektur i stil med Nginx, hvilket resulterer i høj gennemstrømning.
  • GUI-baseret admin-grænseflade, der tilbyder en behagelig konfigurationsoplevelse.
  • Native SAPI til PHP, hvilket resulterer i højere ydeevne.
  • Caching og Google PageSpeedInsights-optimeringer anvendes som standard.

Er OpenLiteSpeed ​​noget for dig?

OpenLiteSpeed ​​giver meget mening for WordPress-baserede indholdsdrevne hjemmesider, da sideoptimeringer allerede er en del af serveren. Da det er finjusteret til PHP-ydeevne, kan PHP-baserede kodebaser og projekter have stor gavn af det.

Cherokee

Det Cherokee projektet var en personlig kløe af en udvikler, som er vokset til en anstændig webserverplatform. Selvom det ikke har avancerede funktioner som Nginx’s, giver det et nemt, sjovt og performant alternativ til de almindelige webservere.

Den største gevinst for Cherokee er enkelhed – der er ingen grund til at svede med kommandolinjen for at konfigurere serveren. En venlig webbaseret grænseflade leveres pakket og er en fornøjelse at bruge for dem, der foretrækker peg-og-klik-metoden til at få tingene gjort.

Kilde: Linode

Selvom Cherokee ikke er særlig aktivt udviklet, er det stadig et godt bud på de fleste hverdagsprojekter. Tjek det ud!

Konklusion

Livet ville ikke have nogen mening uden webservere, og heldigvis har vi en del at vælge imellem nu. Hvad er din yndlings open source webserver? Hvis du synes, jeg gik glip af en vigtig post på listen, så lad mig det vide i kommentarerne, og jeg vil med glæde tilføje det! 🙂