7 Webbservrar med öppen källkod för små till stora webbplatser

Vi har kommit långt sedan den första webbservern släpptes. Nu finns det så många fler spännande alternativ.

Olika projekt har olika behov, men webbserveravdelningen med öppen källkod var mer eller mindre ett monopol. Länge var Apache det enda alternativet, och att hantera hög belastning var en smärta i ryggen. Tack och lov har tiderna förändrats och nya lösningar har dykt upp för specialiserade behov.

Så låt oss ta en titt på några av de bästa och mest populära webbservrarna med öppen källkod som finns tillgängliga idag.

Apache

Det är nästan synonymt med World Wide Web och driver fortfarande majoriteten av webbplatser i världen.

Anledningen till Apaches dominans är trefaldig: en öppen licens, tidigt inträde (den här saken släpptes redan 1995!) och enkel distribution av PHP. Den sista punkten möjliggjordes genom mod_php-modulen, vilket innebar att installation av Apache var allt du behövde göra för att utveckla med PHP.

Här är vad som gör Apache bra:

  • Tillgängligt på alla plattformar – Linux, Windows, MacOS och andra plattformar.
  • Det är standardservern för all delad CPanel-hosting, vilket gör det enkelt att konfigurera och ändra webbplatser.
  • Massor av funktionalitet som erbjuds genom en stor samling av moduler. Oavsett hur oklara dina behov är, finns det säkerligen en befintlig modul för Apache.
  • Konfiguration per katalog genom .htaccess-filer.
  • Stöd för HTTP/2, komprimering, statiska filer och lastbalansering.
  • MPM- och FastCGI-lägen för att leverera hög samtidighet.
  • Enkelt skript genom Lua.

Är Apache något för dig?

Kort sagt, ja. Det fanns en tid när Nginx (som vi ska överväga härnäst) tog fart på grund av dess höga prestanda, men Apache kom ikapp efter dess 2.2-släpp. Som sagt, liksom alla tidiga deltagare, tog Nginx bort mycket uppmärksamhet så att du kan stöta på lite (ogiltig) kritik av dess kapacitet.

Nginx

Om du gillar att dricka ur ”kool-aid”-fontänen (eller för att vara politiskt korrekt, följ den ”senaste” utvecklingen), är det troligt att du har hört talas om Nginx (uttalas som ”engine-x”, vilket var tanken bakom namnet). Den släpptes som ett projekt 2002 av en rysk ingenjör som blev trött på de dåvarande lösningarnas oförmåga att slå CK10 problem (i princip hanterar tusentals samtidiga anslutningar).

När Nginx kom ut gjorde det ett så stort plask att folk precis flyttade från Apache och aldrig såg tillbaka. Och trenden fortsätter idag. Medan Apache utan tvekan är i paritet idag, erbjöd Nginx några fantastiska förbättringar som hjälpte den att vinna.

  • Asynkron arkitektur för hantering av höga belastningar
  • Bäst i klassen statisk filhantering, lastbalansering och omvänd proxy.
  • FastCGI-cache
  • Stöd för uwsgi, SCGI och andra serverprotokoll, med cachning.
  • Gzipping, bildtransformation, byteintervall, chunked respons, etc., med FLV- och MKV-streaming.
  • WebSockets, Keepalive och pipelineanslutningar
  • Åtkomstkontroll, felomdirigering, etc.

Allt som allt är Nginx ett kraftpaket med ett gäng funktioner som håller den före kurvan. Eftersom det underliggande företaget är en hållbar verksamhet finns betald support och rådgivning tillgänglig för komplexa projekt, vilket kan vara användbart för vissa.

Är Nginx något för dig?

Om du gillar att designa webbapplikationer efter din smak är Nginx ett stort plus. Du kan designa komplicerade och distribuerade system med kraftfull cachning, proxy och lastbalansering, förutom att använda Nginx för att servera statiska filer med flera optimeringar direkt.

Och, ja – Nginx är HTTP/2 redo.

Intresserad av att lära dig Nginx? Kolla in det här grundkurs.

Caddie

En av de hetaste nya ramverken som har spridit sig i öppen källkodsgemenskapen nyligen är Caddie.

Tänk på Caddy som en Nginx-liknande webbserver (liknande syntax och allt) men allt är förenklat till en behaglig extrem. Till exempel kan Let’s Encrypt-integrering för SSL göras på bara tre rader med konfiguration.

Här är anledningen till att Caddy väcker massor av uppmärksamhet:

  • HTTPS aktiverat som standard. Ja, du behöver inte göra något för att installera eller förnya SSL-certifikat.
  • HTTP/2 får primärt fokus.
  • Roterar TLS-sessionsbiljettnycklar som standard. Detta ger en mycket säkrare TLS-anslutningshantering som inte är sårbar för sådana som Heartbleed.
  • Inga beroenden (det är en Golang-kompilerad binär kodbas som inte är beroende av några underliggande systembibliotek)
  • Serverar statiska filer i den aktuella katalogen som standard!
  • Inbäddningsbar — kan användas som ett bibliotek i andra program

Är Caddy något för dig?

Om du längtar efter enkelhet och blir avskräckt av de trubbiga konfigurationerna av sådana som Apache och Nginx, kommer Caddy att kännas som en fläkt av frisk luft. Som sagt, det fungerar bäst när du är nöjd med standardinställningarna. Om du till exempel vill använda din SSL-leverantör, ha en separat katalog för statiska filer (vilket nästan alltid är fallet), och så vidare, försvinner fördelarna.

Du kan få Caddie på Kamatera VM från så lite som $4 per månad.

Ljushttpd

Det enda område där de flesta moderna webbservrar misslyckas är resursanvändning. Ljushttpd designades för att övervinna dessa utmaningar i miljöer med lågt minne och låg CPU.

Lighthttpd är byggd på den asynkrona förfrågningshanteringsmodellen, och speglar därför i huvudsak hur Nginx fungerar. Men det finns en hake — Lighthttpd fungerar i en enda tråd, så om du har en mer kapabel maskin kommer den att ignorera andra CPU-kärnor. Den saknar också de snyggare funktionerna i Nginx, såsom SSL-proxy, HTTP/2 och liknande.

Är Lighthttpd något för dig?

Lighthttpd är en kapabel, enkeltrådad webbserver som enkelt kan hantera några hundra förfrågningar per sekund och ändå gå lätt på systemresurser. Förutom det har den inte mycket att erbjuda jämfört med alternativen. Så kanske om du inte behöver alla klockor och visselpipor – och verkligen svettas efter maskinresurser – är Lighthttpd värt att utforska.

MonkeyServer

Trots det udda namnet Apa webbserver är ett intressant projekt som fortsätter att aktivt utvecklas och stödjas.

Huvudattraktionen med MonkeyServer är stödet för inbäddade plattformar. Du skulle behöva kompilera servern själv, men du kan klämma ur alla krusiduller och sluta med en lätt, snabb webbserver.

  • Inriktar sig främst på Linux, men stöds även på MacOS
  • Fullt stöd för ARM-baserade processorer
  • Fungerar perfekt på Android, Raspberry Pi och andra inbäddade plattformar
  • Minimal körtid (100 KB utan plugins)
  • Stöder IPv6 och TLS
  • Fungerar med CGI och FastCGI
  • Grundläggande autentisering, säkerhetsregler etc.

Är MonkeyServer något för dig?

Om du vill rikta in dig på inbäddade enheter är MonkeyServer i stort sett vad du behöver. Som sagt, det fungerar lika bra på x86- och x86-64-arkitekturerna och kan användas för att köra storskaliga applikationer på kraftfulla maskiner. Den har en mycket mer aktiv och levande gemenskap än andra alternativa webbservrar, så du går aldrig vilse om du behöver hjälp.

OpenLiteSpeed

OpenLiteSpeed är öppen källkod för företagswebbservern som erbjuds av LiteSpeed ​​Technologies.

Det finns många anledningar att gilla OpenLiteSpeed:

  • Kompatibel med Apaches mod_rewrite, vilket innebär att om du har massor av befintliga Apache-filer kommer migreringen att vara minimal smärta.
  • Händelsedriven arkitektur i samma stil som Nginx, vilket resulterar i hög genomströmning.
  • GUI-baserat admin-gränssnitt, erbjuder en trevlig konfigurationsupplevelse.
  • Native SAPI för PHP, vilket resulterar i högre prestanda.
  • Caching och Google PageSpeedInsights-optimeringar tillämpas som standard.

Är OpenLiteSpeed ​​något för dig?

OpenLiteSpeed ​​är mycket vettigt för WordPress-baserade innehållsdrivna webbplatser, eftersom sidoptimeringar redan är en del av servern. Eftersom det är finjusterat för PHP-prestanda, kan PHP-baserade kodbaser och projekt dra oerhört mycket.

Cherokee

De Cherokee Projektet var en personlig klåda av en utvecklare, som har vuxit till en anständig webbserverplattform. Även om den inte har avancerade funktioner som Nginx, ger den ett enkelt, roligt och prestandaalternativ till de vanliga webbservrarna.

Den största vinsten för Cherokee är enkelheten – det finns ingen anledning att svettas med kommandoraden för att konfigurera servern. Ett vänligt webbaserat gränssnitt levereras paketerat och är en fröjd att använda för dem som föredrar peka-och-klicka-metoden för att få saker gjorda.

Källa: Linode

Även om Cherokee inte är särskilt aktivt utvecklad, är det fortfarande en bra satsning för de flesta vardagliga projekt. Kolla in det!

Slutsats

Livet skulle inte ha någon mening utan webbservrar, och tack och lov har vi en hel del att välja på nu. Vilken är din favorit webbserver med öppen källkod? Om du tror att jag missat en viktig post i listan, vänligen låt mig veta i kommentarerna så lägger jag mer än gärna till det! 🙂