K stiahnutiu

10 najlepších webových serverov s otvoreným zdrojom pre Linux

10 najlepších webových serverov s otvoreným zdrojom pre Linux

Tento článok čítate z webovej stránky používajúcej webový server s otvoreným zdrojovým kódom jednoducho preto, lebo webové servery s otvoreným zdrojovým kódom napájajú viac ako 80% webových stránok a aplikácií. Termín webový server sa dá zameniť tým, že označuje hardvér alebo softvér používaný na poskytovanie obsahu koncovým používateľom alebo klientom prostredníctvom protokolu HTTP.

Webové servery sú vo vývoji a neustále sa zlepšujú od začiatku 90. rokov. Existujú rôzne typy webových serverov a môžu byť zostavené pre konkrétne potreby, pre určité technológie alebo ako špeciálne možnosti pre určité korporácie.

V tomto článku je uvedený zoznam spoľahlivých a populárnych projektov webového servera s otvoreným zdrojovým kódom, ktoré sú k dispozícii na inštaláciu a spustenie vašej aplikácie alebo webu.

Open Source webové servery pre Linux

Webový server môže odkazovať na celý hardvérový a softvérový systém alebo konkrétne na softvér, ktorý prijíma a slúži požiadavkám HTTP od klientov.

Ako softvér webový server riadi a spravuje, ako sa hosťované súbory poskytujú klientom. Môže to byť server HTTP, ktorý rozumie adresám URL a protokolom HTTP alebo HTTP / 2.

Ako hardvér je webový server počítač, ktorý hostí softvér webového servera a súbory komponentov webových stránok, ako sú stránky HTML, šablóny štýlov CSS, obrázky alebo súbory JavaScript.

Kedykoľvek používateľ, ako ste vy, potrebuje súbor alebo informácie hostené na webovom serveri, na odoslanie žiadosti použije webový prehliadač. Požiadavka sa odošle na príslušný webový server (hardvér), kde server HTTP prijme požiadavku, nájde vhodný súbor a prostredníctvom protokolu HTTP ho odošle späť do prehľadávača klienta.

Statický webový server odošle hostené súbory tak, ako sú, do vášho prehliadača.
Dynamický webový server obsahuje databázu a aplikačný server, ktorý aktualizuje hostené súbory pred ich odoslaním do vášho prehliadača pomocou protokolu HTTP.

1: Webový server Apache HTTP

Pôvodne uvedený na trh v roku 1995 je najpopulárnejším webovým serverom. Podľa štatistík používania webových serverov od w3tech.com, Apache je v moci okolo 33.9% webových aplikácií a webov v sieti WWW. Vydáva sa pod licenciou Apache License verzie 2, ktorá si vyžaduje zachovanie upozornení o autorských právach a vylúčení zodpovednosti, ale nevyžaduje distribúciu upravených verzií s rovnakou licenciou. Beží vo všetkých populárnych operačných systémoch ako Linux, Unix, Windows, Mac OS X, FreeBSD, Solaris, Novell Netware, OS / 2 atď.

Apache HTTP je napísaný v jazyku C a používa modulárnu architektúru, ktorú je možné veľmi dobre prispôsobiť, a na rozšírenie svojich funkcií dokáže načítať ďalšie moduly. Medzi ne patrí mod_proxy, ktorý na vašom serveri umožní proxy / bránu, mod_proxy_balancer umožní vyváženie záťaže pre všetky podporované protokoly. mod_file_cache pre ukladanie do medzipamäte, mod_ftp pre podporu FTP pre upload a download, alebo mod_ssl pre podporu šifrovacieho protokolu SSL / TLS.
Medzi ďalšie pozoruhodné moduly patrí modul proxy (mod_proxy), mod_rewrite (modul prepisovania adries URL), mod_include a mod_ext_filter.

Apache tiež ponúka populárnu metódu kompresie obsiahnutú v externom rozširovacom module, mod_gzip. Bol navrhnutý tak, aby pomáhal zmenšovať veľkosť webových stránok poskytovaných cez HTTP. Vlastné protokoly (mod_log_config) spravujú súbory protokolov, ktoré je možné analyzovať prostredníctvom webového prehľadávača. Obsahuje ModSecurity na správu detekcie a prevencie narušenia webových aplikácií.

Žiaduce vlastnosti

Od verzie 2.4, Apache podporuje HTTP / 2 prostredníctvom mod_http / 2, čo zvyšuje výkon. Apache bol považovaný za o niečo pomalší ako Nginx (asynchrónny webový server založený na udalostiach), čo viedlo k zvýšenému prijatiu Nginx, ale používatelia boli svedkami zlepšeného výkonu od Apache 2.2.

2: Webový server Apache Tomcat

Apache Tomcat je populárny podnikový webový server dostupný na trhu. Je zostavený tak, aby hostil webové riešenia Java, ktorých použitie je vo veľkých organizáciách pomerne časté a hojné z dôvodu vysokej škálovateľnosti, výkonu a množstva nástrojov dostupných pre ekosystém Java. Apache Tomcat je vyspelý webový server, za vytvorenie ktorého sa zaslúžil James Duncan Davidson z nadácie Apache. Tomcat bol vyvíjaný pred viac ako 20 rokmi softvérovou nadáciou Apache ako webový server Apache.

Tomcat je servlet Java, ktorý je dodávaný s rozšírenými funkciami pre interakciu s servletmi Java a implementuje technické špecifikácie, ako sú napríklad JavaServer Pages (JSP) a Java Expression Language (Java EL).

Tomcat je vyrobený z viacerých komponentov ako Coyote, Catalina, Jasper, Cluster atď. Catalina je kontajner servletu, zatiaľ čo Coyote je komponent konektora, ktorý podporuje HTTP 1.1. ako webový server. Umožňuje Cataline (servlet Java alebo kontajner JSP) pôsobiť ako webový server, ktorý poskytuje miestne súbory ako dokumenty HTTP. Jasper je motor JSP spoločnosti Tomcat a analyzuje súbory JSP, aby ich skompiloval do kódu Java ako servlety. Klastrový komponent spravuje veľké aplikácie pomocou vyrovnávania záťaže a ďalších techník.

Môžete spustiť Apache Tomcat spolu s Apache HTTP, aby ste uľahčili projekty v prostredí Java aj PHP. Tomcat podporuje aj AWS (Amazon Web Services), takže je ideálny pre cloudové riešenia. Eclipse IDE podporuje Tomcat, čo vývojárom uľahčuje vytváranie a nasadenie aplikácií.

Žiaduce vlastnosti

Webový server Apache Tomcat je lepšou voľbou pre webové aplikácie Java. Apache Tomcat je často uvedený medzi ostatnými open-source aplikačnými servermi Java, ako sú JBoss, Wildfly a Glassfish.

3: Nginx Webserver

Nginx read 'Engine-x' je open-source, vysoko výkonný a odolný webový server. Môže byť nasadený ako nástroj na vyrovnávanie zaťaženia, reverzný proxy server, proxy server IMAP / POP3 a brána API. Igor Sysoev ju vyvinul v roku 2002 ako odpoveď na problém C10K. Problém C10k je problém optimalizácie sieťových zásuviek a webových serverov tak, aby zvládli desaťtisíc súbežných pripojení a klientov. Popularita Nginxu rastie približne na 33.7% všetkých webových stránok.

Nginx sa pri spracovávaní veľkého množstva súbežných relácií spolieha na asynchrónnu architektúru riadenú udalosťami. Medzi správcami sa stal obľúbeným vďaka nízkemu využitiu zdrojov, vysokej súbežnosti a škálovateľnosti. Je ideálny na hosťovanie webových stránok s vysokou premávkou a dokáže spracovať až 500 000 požiadaviek za sekundu s nízkym využitím procesora.

Nginx je možné použiť ako samostatný webový server alebo ako server so statickým obsahom pred iným webovým serverom. Okrem toho môžete nasadiť Nginx na poskytovanie dynamického obsahu HTTP v sieti pomocou obslužných programov SCGI pre skripty, aplikačných serverov FastCGI, WSGI alebo modulov Phusion Passenger.

Žiaduce vlastnosti

Nginx má dve zavedené verzie, OSS Nginx a Nginx Plus. Nginx Plus ponúka ďalšie funkcie, ako sú aktívne kontroly stavu, vytrvalosť relácií, integrácia služieb DNS - objav, Datalog, doplnky Dynatrace New Relic, API na čistenie medzipamäte, AppDynamic, Active-Active HA so synchronizáciou konfigurácie. Rozhranie Nginx Plus API podporuje obchody kľúč - hodnota.

Nginx bol navrhnutý tak, aby konkuroval serveru Apache pri poskytovaní statických súborov, využívaní menšej pamäte a hľadaní odpovedí na problém c10k. Môžeme s istotou povedať, že v tejto kategórii poráža Apache. Preto ho nasadili populárne weby s vysokou prevádzkou, ako sú Facebook, LinkedIn a Twitter. Viac informácií o projekte sa dozviete na oficiálnej domovskej stránke Nginx.

4: Uzol.js webový server

Uzol.js je runtime prostredie na strane servera, ktoré sa používa na vytváranie webových aplikácií v jazyku Javascript. Je dodávaný s modulom HTTP, aby sa rozšírila jeho funkčnosť ako webového servera. Uzol.js pôvodne napísal v roku 2009 Ryan Dahl a v súčasnosti vlastní 1.2% všetkých webových stránok.

Uzol.js implementuje architektúru riadenú udalosťami, ktorá je schopná asynchrónneho I / O. Optimalizuje priepustnosť a škálovateľnosť a vo webových aplikáciách môžete efektívne implementovať komunikáciu v reálnom čase. Kľúčový rozdiel medzi uzlom.js a ďalších webových serverov spočíva v tom, že je súčasťou zásobníka webového vývoja vytvoreného zo zásobníka CSS, HTML a JavaScript.
Uzol.Projekt js sa riadi Uzlom.js Foundation a je k dispozícii na základe kombinácie licencií. Zistite viac z Uzla.webová stránka projektu js.

5: Caddy Webserver

Caddy je rýchly a výkonný multiplatformový webový server, reverzný proxy server, brána API a nástroj na vyrovnávanie zaťaženia. Projekt Caddy navrhol Mathew Holt a bol napísaný v jazyku Go. Je to nový rámec a silno si získava pozornosť a pozornosť v rámci open-source ako alternatíva k webovému serveru Apache.

Caddy je zostavený bez závislostí, vďaka čomu je prenosný a ľahko sa inštaluje a používa v rôznych distribúciách. Caddy podporuje funkcie ako IPv6, Markdown, WebSockets, FastCGI, šablóny atď. Caddy predvolene aktivuje HTTPS pre webové stránky s oprávňujúcimi názvami domén a presmeruje požiadavky HTTP na HTTPS. Certifikáty získava počas spustenia a neustále ich obnovuje počas celej životnosti servera.

Je zaujímavé, že má funkciu „TLS na požiadanie“, ktorá ponúka alternatívnu metódu konfigurácie, ktorá umožňuje spoločnosti Caddy získavať certifikáty iba podľa potreby počas overovania totožnosti TLS. Je k dispozícii vo všetkých hlavných distribúciách, ako sú MAC, Windows, Android, Linux, BSD a Solaris.

Žiaduce vlastnosti

Caddy je skvelým kandidátom pre používateľa, ktorý hľadá jednoduchosť a rád pracuje s predvolenými konfiguráciami. Je to ideálny webový server na spúšťanie aplikácií napísaných v GO. Podľa w3tech v súčasnosti poháňa 0.1% všetkých webových stránok.

6: Eclipse Jetty Webserver

Eclipse Jetty je navrhnutý a vyrobený ako server HTTP, klient HTTP a kontajner servletu javax na poskytovanie statického a dynamického obsahu ako samostatnej alebo vloženej inštancie. Webový server Jetty a ďalšie základné súčasti sú hostené a udržiavané nadáciou Eclipse Foundation.
Jetty je ľahký a vysoko škálovateľný webový server a servlet. Jetty je plne asynchrónny webový server, ktorý je zameraný na jednotlivé komponenty a je možné ho ľahko zabudovať do iných aplikácií. Podporuje webové protokoly ako HTTP, HTTP / 2 a WebSocket. Tieto technológie implementujú vysokoobjemovú architektúru s nízkou latenciou a maximálnym výkonom pri zachovaní jej jednoduchosti a kompatibility. Môže dosiahnuť vynikajúce výsledky pri desiatkach tisíc súčasných pripojení HTTP a pripojení WebSocket.

Jetty má malú stopu, ktorá umožňuje webovým vývojárom efektívne nasadiť a konfigurovať Jetty v akomkoľvek prostredí bez obáv z nežiaduceho použitia réžie alebo pamäte. Vďaka malej pamäťovej stope môžete na virtuálnom hardvéri spustiť viac inštancií servera, čo z neho robí dobrú voľbu v cloudových nasadeniach a infraštruktúre.

Žiaduce vlastnosti

Eclipse našlo prijatie v mnohých projektoch, ako sú Apache ActiveMQ, Google App Engine, Alfresco, Apache Geronimo, Apache Maven, Apache Spark, Eclipse a Twitter's Streaming API. Viac informácií nájdete tu.

7: Webový server Lighttpd

Lighttpd alebo Lighty je bezplatný webový server s otvoreným zdrojovým kódom určený pre aplikácie náročné na rýchlosť. Je bezpečný, rýchly, flexibilný a má minimálnu stopu menej ako 1 MB. Vďaka malým rozmerom je veľmi úsporný so zdrojmi servera a využitím procesora. Lighttpd je distribuovaný pod licenciou BSD a je obľúbený pre svoju jednoduchosť, výkon a podporné moduly.

Lighttpd je postavený na asynchrónnom modeli vybavovania požiadaviek, ktorý je nevyhnutný pri spracovaní a správe veľkého množstva paralelných pripojení, čo z neho robí ideálnu voľbu pre vysoko výkonné webové aplikácie. Niekto by mohol povedať, že zrkadlí architektúru v Nginxe. Podporuje FastCGI, CGI a SCGI na prepojenie vášho webového servera s inými programami. Podporuje tiež aplikácie napísané v iných jazykoch, ako sú Python, Perl, PHP a Ruby, ktoré sú medzi vývojármi obľúbenými vývojovými jazykmi.

Medzi ďalšie pokročilé funkcie v hre Lighty patria; Auth, prepisovanie URL, podpora SSL / TLS, virtuálny hosting a HTTP kompresia výstupu cez modul mod_compress.

Žiaduce vlastnosti

Lighttpd je webový server s jedným vláknom, ktorý dokáže ľahko spracovať niekoľko stoviek požiadaviek za sekundu, a je dobrou voľbou pre používateľov, ktorí čelia výzvam v prostrediach s nízkou pamäťou a nízkym procesorom. Lighty beží natívne na systémoch Linux / Unix, ale môžete ho spustiť aj na platforme Microsoft Windows. Viac informácií o štatistike jeho používania, licenciách a podpore nájdete na domovskej stránke Lighttpd.

8: OpenLiteSpeed ​​Webserver

OpenLiteSpeed ​​je open-source alternatíva k edícii servera LiteSpeed ​​Enterprise Web. Je navrhnutý pre jednoduchosť, zabezpečenie, optimalizáciu a prichádza so všetkými základnými vlastnosťami edície Enterprise.

OpenLiteSpeed ​​je navrhnutý na architektúre založenej na udalostiach a optimalizovanej pre zdroje. Dodáva sa s intuitívnym grafickým používateľským rozhraním WebAdmin na správu webových stránok a sledovanie rôznych súborov metrík servera. OpenLiteSpeed ​​je optimalizovaný na vykonávanie skriptov navrhnutých v širokej škále jazykov, ako sú Perl, Python, Ruby a Java. Podporuje IPv6 a SSL / TLS.

Žiaduce vlastnosti

OpenLiteSpeed ​​je všestranný a môžete ho nakonfigurovať ako nástroj na vyrovnávanie zaťaženia alebo reverzný proxy server. OpenLiteSpeed ​​je zadarmo na stiahnutie a je k dispozícii pod licenciou GPLv3. Je to dobrá voľba pre obsahové weby založené na WordPress.

9: H2O webový server

H2O je open-source server HTTP novej generácie. Môže sa pochváliť rýchlejšími časmi odozvy a menším využitím procesora v porovnaní so staršími webovými servermi. H2O je navrhnutý a vyrobený od základu tak, aby vytváral plnohodnotné implementácie HTTP / 2.

Používatelia H2O môžu využívať výhody nových funkcií protokolu HTTP / 2, ako je optimalizácia latencie, serverový push, prioritné zobrazovanie obsahu a serverový push. Tieto funkcie môžu využívať výhody moderných funkcií prehľadávača.

Žiaduce vlastnosti

H20 je napísaný v programovacom jazyku C a dá sa tiež použiť ako knižnica. H2O je k dispozícii pod licenciou MIT. Zistite viac o štatistikách používania H2O.

10: Webový server Cherokee

Cherokee je ľahký, rýchly, flexibilný a výkonný otvorený zdrojový webový server s rôznymi platformami. Bol vyvinutý ako projekt osobného rozvoja, ale vyrástol na slušný webový server fungujúci na systémoch Linux, BSD, Solaris, MAC a Windows.

Cherokee robí náš zoznam kvôli jeho jednoduchosti. Dodáva sa s priateľským webovým rozhraním a na jeho spustenie a fungovanie nemusíte ovládať veľa konfigurácií príkazového riadku.
Podporuje technológie ako FastCGI, CGI, SSI, SCGI, PHP, TLS a SSL šifrované pripojenia, VirtualHosts, vyvažovanie záťaže a protokoly kompatibilné s Apache.

Cherokee zvláda súčasné pripojenie na nízkej pamäti a zvyšuje výkon hardvéru. Má modulárnu architektúru, ktorú je možné upravovať a rozširovať pomocou sprievodcu správou za účelom vykonávania konkrétnych úloh, rozširovania aplikácií a spúšťania rámcov.

Žiaduce vlastnosti

Napriek tomu, že nie je aktívne vyvíjaný, je dobrým webovým serverom pre jednoduché projekty. Podporuje PHP, Django, Ruby on Rails, ColdFusion, Alfresco, Symfony, GNU Mailman, .NET s Mono, rTorrent a Zend Engine, čo vám dáva veľa alternatív k vytvoreniu vášho projektu.

Učte sa skúšaním

Ak začínate na webových serveroch, vyskúšajte balíčky LEMP (Linux, Nginx, MySQL, PHP) alebo LAMP (Linux, Apache, MySQL, PHP). Tieto stohy môžete ľahko nainštalovať pomocou jednoduchých inštalátorov a sú k dispozícii aj vo vašom správcovi balíkov Linux. Poskytne vám rozsiahle praktické skúsenosti s fungovaním webových serverov.

Zahrnul som niektoré populárne webové servery (Apache, Nginx), novšie (H2O, Node).js) a pozrel sa na webový server Jetty podporovaný technológiami Java. Zoznam nie je v žiadnom prípade rozsiahly a s ďalším výskumom môžete nájsť ďalšie technológie webových serverov, ktoré môžete vyskúšať alebo použiť pre svoj projekt.

Hry Ako zobraziť prekrytie OSD v linuxových aplikáciách a hrách na celú obrazovku
Ako zobraziť prekrytie OSD v linuxových aplikáciách a hrách na celú obrazovku
Hranie hier na celú obrazovku alebo používanie aplikácií v režime rozptýlenia zadarmo na celú obrazovku vás môže odrezať od relevantných systémových i...
Hry Top 5 kariet na zachytávanie hier
Top 5 kariet na zachytávanie hier
Všetci sme videli a milovali streamovanie hier na YouTube. PewDiePie, Jakesepticye a Markiplier sú iba niektorí z najlepších hráčov, ktorí zarobili mi...
Hry Ako vyvíjať hru v systéme Linux
Ako vyvíjať hru v systéme Linux
Pred desiatimi rokmi by len málo používateľov Linuxu predpovedalo, že ich obľúbený operačný systém bude jedného dňa populárnou hernou platformou pre k...