7 serwerów internetowych typu open source dla małych i dużych witryn

Przeszliśmy długą drogę od czasu wydania pierwszego serwera WWW. Teraz jest o wiele więcej ekscytujących opcji.

Różne projekty mają różne potrzeby, ale dział serwerów internetowych typu open source był mniej więcej monopolistą. Przez długi czas Apache był jedyną opcją, a obsługa dużych obciążeń była uciążliwa. Na szczęście czasy się zmieniły i pojawiły się nowe rozwiązania dla specjalistycznych potrzeb.

Przyjrzyjmy się więc niektórym z najlepszych i najpopularniejszych obecnie dostępnych serwerów internetowych typu open source.

Apache

Jest prawie synonimem sieci WWW i nadal obsługuje większość witryn internetowych na świecie.

Powód dominacji Apache’a jest trojaki: otwarta licencja, wczesne wejście (to zostało wydane w 1995 roku!) i łatwe wdrożenie PHP. Ostatni punkt był możliwy dzięki modułowi mod_php, co oznaczało, że instalacja Apache była wszystkim, co trzeba było zrobić, aby programować w PHP.

Oto co sprawia, że Apache Świetnie:

  • Dostępne na wszystkich platformach – Linux, Windows, MacOS i innych platformach.
  • Jest to domyślny serwer dla wszystkich hostingów współdzielonych CPanel, dzięki czemu konfiguracja i zmiana witryn jest bezproblemowa.
  • Mnóstwo funkcjonalności oferowanych przez dużą kolekcję moduły. Bez względu na to, jak niejasne są Twoje potrzeby, na pewno istnieje istniejący moduł dla Apache.
  • Konfiguracja według katalogu za pomocą plików .htaccess.
  • Obsługa HTTP/2, kompresji, plików statycznych i równoważenia obciążenia.
  • Tryby MPM i FastCGI zapewniające wysoką współbieżność.
  • Łatwe pisanie skryptów przez Lua.

Czy Apache jest dla Ciebie?

Krótko mówiąc, tak. Był czas, kiedy Nginx (który omówimy dalej) wystartował ze względu na swoją wysoką wydajność, ale Apache nadrobił zaległości po wydaniu 2.2. To powiedziawszy, podobnie jak wszyscy wcześni uczestnicy, Nginx poświęcił wiele uwagi, dzięki czemu możesz spotkać się z pewną (nieprawidłową) krytyką jego możliwości.

Nginx

Jeśli lubisz pić z fontanny „kool-aid” (lub aby być politycznie poprawnym, śledź „najnowsze” wydarzenia), prawdopodobnie słyszałeś o Nginx (wymawiane jako „silnik-x”, co było ideą stojącą za nazwą). Został wydany jako projekt w 2002 roku przez rosyjskiego inżyniera, który miał dość niemożności pokonania ówczesnych rozwiązań. CK10 problem (w zasadzie obsługa tysięcy jednoczesnych połączeń).

Kiedy pojawił się Nginx, zrobił tak duży szum, że ludzie po prostu odeszli od Apache i nigdy nie oglądali się za siebie. A trend trwa do dziś. Chociaż Apache jest dziś prawdopodobnie na równi, Nginx zaoferował kilka oszałamiających ulepszeń, które pomogły mu wygrać.

  • Architektura asynchroniczna do obsługi dużych obciążeń
  • Najlepsza w swojej klasie obsługa plików statycznych, równoważenie obciążenia i możliwości odwrotnego proxy.
  • Buforowanie FastCGI
  • Obsługa protokołów uwsgi, SCGI i innych serwerów z buforowaniem.
  • Gzipowanie, transformacja obrazu, zakresy bajtów, fragmenty odpowiedzi itp. z przesyłaniem strumieniowym FLV i MKV.
  • WebSockets, połączenia podtrzymujące i potokowe
  • Kontrola dostępu, przekierowywanie błędów itp.

Podsumowując, Nginx to potęga z wieloma funkcjami, dzięki którym wyprzedza konkurencję. Ponieważ podstawowa firma jest zrównoważonym biznesem, płatne wsparcie i doradztwo są dostępne dla złożonych projektów, co może być przydatne dla niektórych.

Czy Nginx jest dla Ciebie?

Jeśli lubisz architekturę aplikacji internetowych według własnych upodobań, Nginx jest dużym plusem. Możesz projektować skomplikowane i rozproszone systemy z potężnym buforowaniem, proxy i równoważeniem obciążenia, oprócz używania Nginx do bezpośredniego obsługiwania plików statycznych z kilkoma optymalizacjami.

I tak – Nginx jest gotowy na HTTP/2.

Zainteresowany nauką Nginx? Sprawdź to kurs podstawowy.

Nosiciel kijów golfowych

Jednym z najgorętszych nowych frameworków, które ostatnio pojawiły się w społeczności open-source, jest Nosiciel kijów golfowych.

Pomyśl o Caddy jako o serwerze WWW podobnym do Nginx (podobna składnia i tak dalej), ale wszystko jest uproszczone do przyjemnego ekstremum. Na przykład integracja Let’s Encrypt dla SSL może być wykonana w zaledwie trzech liniach konfiguracji.

Oto dlaczego Caddy przyciąga tyle uwagi:

  • Protokół HTTPS włączony domyślnie. Tak, nie musisz nic robić, aby zainstalować lub odnowić certyfikaty SSL.
  • HTTP/2 staje się głównym celem.
  • Domyślnie obraca klucze biletu sesji TLS. Zapewnia to znacznie bezpieczniejsze zarządzanie połączeniami TLS, które nie jest podatne na ataki typu Heartbleed.
  • Brak zależności (jest to skompilowana przez Golanga baza kodu binarnego, która nie zależy od żadnych bazowych bibliotek systemowych)
  • Domyślnie obsługuje pliki statyczne w bieżącym katalogu!
  • Możliwość osadzenia — może być używana jako biblioteka w innych programach

Czy Caddy jest dla ciebie?

Jeśli pragniesz prostoty i odstraszają cię tępe konfiguracje Apache i Nginx, Caddy poczuje się jak powiew świeżego powietrza. To powiedziawszy, działa najlepiej, gdy jesteś zadowolony z ustawień domyślnych. Na przykład, jeśli chcesz korzystać z dostawcy SSL, miej osobny katalog dla plików statycznych (co prawie zawsze ma miejsce) i tak dalej, korzyści znikną.

Możesz dostać Caddy na Kamatera Maszyny wirtualne już od 4 USD miesięcznie.

Lighthttpd

Jedynym obszarem, w którym większość nowoczesnych serwerów WWW zawodzi, jest zużycie zasobów. Lighthttpd został zaprojektowany, aby sprostać tym wyzwaniom w środowiskach o małej ilości pamięci i niskim procesorze.

Lighthttpd jest zbudowany na asynchronicznym modelu obsługi żądań, więc zasadniczo odzwierciedla sposób działania Nginx. Ale jest jeden haczyk — Lighthttpd działa w jednym wątku, więc jeśli masz bardziej wydajną maszynę, zignoruje inne rdzenie procesora. Brakuje również bardziej wyszukanych funkcji Nginx, takich jak proxy SSL, HTTP/2 i tym podobne.

Czy Lighthttpd jest dla Ciebie?

Lighthttpd to wydajny, jednowątkowy serwer WWW, który może z łatwością obsłużyć kilkaset żądań na sekundę i nadal nie obciążać zasobów systemowych. Poza tym nie ma wiele do zaoferowania w porównaniu z alternatywami. Więc może, jeśli nie potrzebujesz wszystkich dzwonków i gwizdków — i naprawdę, naprawdę się pocisz, by zdobyć zasoby maszynowe — warto zbadać Lighthttpd.

MałpiSerwer

Pomimo dziwnej nazwy, Małpa serwer WWW to ciekawy projekt, który jest nadal aktywnie rozwijany i wspierany.

Główną atrakcją MonkeyServer jest obsługa platform wbudowanych. Musisz sam skompilować serwer, ale możesz wycisnąć wszystkie dodatki i otrzymać lekki, szybki serwer WWW.

  • Przeznaczony głównie dla systemu Linux, ale jest również obsługiwany w systemie MacOS
  • Pełne wsparcie dla procesorów opartych na ARM
  • Działa doskonale na Androidzie, Raspberry Pi i innych platformach wbudowanych
  • Minimalny czas działania (100 KB bez wtyczek)
  • Obsługuje IPv6 i TLS
  • Działa z CGI i FastCGI
  • Uwierzytelnianie podstawowe, zasady bezpieczeństwa itp.

Czy MonkeyServer jest dla Ciebie?

Jeśli chcesz kierować reklamy na urządzenia wbudowane, MonkeyServer jest prawie tym, czego potrzebujesz. To powiedziawszy, działa równie dobrze na architekturach x86 i x86-64 i może być używany do uruchamiania aplikacji na dużą skalę na potężnych maszynach. Ma znacznie bardziej aktywną i żywą społeczność niż inne alternatywne serwery internetowe, więc nigdy się nie zgubisz, jeśli potrzebujesz pomocy.

OpenLiteSpeed

OpenLiteSpeed jest odmianą open source serwera internetowego dla przedsiębiorstw oferowanego przez LiteSpeed ​​Technologies.

Jest wiele powodów, aby polubić OpenLiteSpeed:

  • Kompatybilny z mod_rewrite Apache, co oznacza, że ​​jeśli masz mnóstwo istniejących plików Apache, migracja będzie minimalnym problemem.
  • Architektura sterowana zdarzeniami w stylu Nginx, zapewniająca wysoką przepustowość.
  • Interfejs administratora oparty na GUI, oferujący przyjemną konfigurację.
  • Natywne SAPI dla PHP, co skutkuje wyższą wydajnością.
  • Optymalizacje buforowania i Google PageSpeedInsights są stosowane domyślnie.

Czy OpenLiteSpeed ​​jest dla Ciebie?

OpenLiteSpeed ​​ma wiele sensu w przypadku witryn opartych na treści WordPress, ponieważ optymalizacje stron są już częścią serwera. Ponieważ jest dostrojony pod kątem wydajności PHP, bazy kodu i projekty oparte na PHP mogą ogromnie skorzystać.

Czirokez

The Czirokez Projekt był osobistym swędzeniem programisty, który wyrósł na przyzwoitą platformę serwera WWW. Chociaż nie ma najnowocześniejszych funkcji, takich jak Nginx, zapewnia łatwą, przyjemną i wydajną alternatywę dla głównych serwerów internetowych.

Największą zaletą Cherokee jest prostota — nie ma potrzeby przedzierania się przez wiersz poleceń do konfiguracji serwera. Przyjazny interfejs sieciowy jest dostarczany w pakiecie i jest przyjemnością w użyciu dla tych, którzy preferują metodę „wskaż i kliknij”.

Źródło: Linode

Chociaż Cherokee nie jest bardzo aktywnie rozwijany, nadal jest dobrym wyborem dla większości codziennych projektów. Sprawdź to!

Wniosek

Życie nie miałoby sensu bez serwerów internetowych i na szczęście mamy teraz sporo do wyboru. Jaki jest twój ulubiony serwer internetowy typu open source? Jeśli uważasz, że przegapiłem jakiś ważny wpis na liście, daj mi znać w komentarzach, a chętnie go dodam!