Jak utworzyć prosty serwer WWW z darkhttpd

Jak utworzyć prosty serwer WWW z darkhttpd
Zdjęcie ekranu komputera wyświetlającego kod HTML.

Darkhttpd to lekki, jednobinarny demon serwera WWW dla systemu Linux. Zapewnia prosty sposób „zero konfiguracji” do wdrażania witryn tak szybko, jak to możliwe na serwerze. Tutaj pokazujemy, jak zainstalować darkhttpd w systemie Ubuntu Linux, jak wypada w porównaniu z popularnymi serwerami WWW i prowadzimy przez proces tworzenia pierwszej witryny.

Darkhttpd kontra Apache kontra Nginx

Darkhttpd nie jest jedynym serwerem WWW, który możesz zainstalować na swoim komputerze z systemem Linux. Są Apache, Nginx, Caddy, Lighttpd i wiele innych. W tej sekcji porównamy darkhttpd z Apache i Nginx i zobaczymy, jak się sprawdza.

Jeśli chodzi o łatwość użytkowania, darkhttpd zdecydowanie bije Apache i Nginx. Darkhttpd koncentruje się na utrzymywaniu wszystkiego w jednym programie. Oznacza to, że możesz udostępniać swoją witrynę, nie martwiąc się o jej konfigurację i usługę init swojego systemu.

Terminal pokazujący wyjście pomocy darkhttpd.

Jeśli chodzi o bezpieczeństwo, darkhttpd używa chroot dla swoich plików. Posiada również automatyczne limity czasu dla bezczynnych połączeń i podstawowe rejestrowanie. To dalekie od Apache i Nginx. Oba mają potężne filtry ograniczające szybkość i opcje dostrajania nagłówków HTTP na swoich stronach.

Prostota Darkhttpd sprawia również, że jest on nieelastyczny wobec niestandardowych wymagań użytkowników. Twórcy programu zaprojektowali go jako szybki sposób obsługi statycznej zawartości sieciowej. Oznacza to, że w porównaniu do Apache i Nginx, darkhttpd nie może uruchamiać skryptów CGI ani działać jako odwrotny serwer proxy dla Twoich aplikacji.

Terminal pokazujący przykładową konfigurację odwrotnego serwera proxy dla Nginx.
Kategoria ciemnyhttpd Apacz Nginx
Łatwość użycia Nie wymaga dodatkowej konfiguracji do hostowania stron internetowych. Wymaga konfiguracji systemowej i specyficznej dla danej lokalizacji. Wymaga konfiguracji specyficznej dla danej witryny.
Całkowite bezpieczeństwo Zawiera podstawowe funkcje chroot i rejestrowania. Zawiera ograniczniki przepustowości i nagłówki HTTP skoncentrowane na bezpieczeństwie. Zawiera ograniczniki przepustowości i nagłówki HTTP skoncentrowane na bezpieczeństwie.
Wsparcie SSL Brak wbudowanej obsługi protokołu SSL. Zawiera „mod_ssl” do obsługi SSL. Posiada wbudowaną obsługę protokołu SSL.
Elastyczność aplikacji Można stosować wyłącznie statyczną zawartość internetową. Może pracować zarówno ze statyczną, jak i dynamiczną treścią internetową. Może działać jako serwer WWW, moduł równoważenia obciążenia i odwrotny serwer proxy.

Przygotowanie systemu do darkhttpd

Pierwszym krokiem w tworzeniu witryny z wykorzystaniem darkhttpd w systemie Ubuntu Linux jest uzyskanie zależności dla Dockera i Docker Compose.

Zacznij od pobrania klucza podpisu dla projektu Docker:

Użyj swojego ulubionego edytora tekstu, aby utworzyć nowy plik repozytorium:

Wklej następujący wiersz kodu do pliku repozytorium:

Przeładuj repozytoria pakietów na swoim komputerze i zaktualizuj cały system:

Zainstaluj Dockera, wtyczkę Compose i Git za pomocą apt:

Terminal pokazujący proces instalacji Dockera, jego wtyczek i Gita.

Instalowanie i uruchamianie darkhttpd

Przejdź do swojego katalogu domowego i ściągnij najnowszą wersję darkhttpd na swój system:

Przejdź do repozytorium Git, a następnie utwórz nowy plik Docker Compose przy użyciu swojego ulubionego edytora tekstu:

Wklej następujący blok kodu do pliku Compose:

Zapisz nowy plik Compose, a następnie uruchom następujące polecenie, aby skompilować i uruchomić kontener Docker darkhttpd:

Utwórz folder „html” w repozytorium Linux darkhttpd, a następnie skopiuj do niego pliki swojej statycznej witryny:

Potwierdź, że darkhttpd działa prawidłowo, wyświetlając listę dostępnych kontenerów w systemie:

Terminal pokazujący kontener Docker darkhttpd działający w systemie.

Uruchamianie darkhttpd przez SSL za pomocą stunnel

W tym momencie masz już działający serwer darkhttpd na porcie 8080. Jednak aby uzyskać do niego dostęp przez internet, musisz najpierw otoczyć go protokołem SSL za pomocą odwrotnego serwera proxy.

Na początek utwórz nowy rekord DNS „A” dla swojej domeny wskazujący na adres IPv4 Twojego darkhttpd. W moim przypadku wskażę adres IPv4 mojego komputera na rekord: „web.myvpsserver.top”.

Pobierz i zainstaluj na swoim komputerze stunnel, pakiet snap „core” i Certbot:

Zarejestruj swoją instancję darkhttpd w Electronic Frontier Foundation:

Wygeneruj podstawowy certyfikat SSL dla swojej nazwy domeny:

Terminal pokazujący proces generowania certyfikatu SSL w LetsEncrypt.

Utwórz nowy plik konfiguracyjny dla odwrotnego serwera proxy stunnel:

Wklej następujący blok kodu do nowego pliku konfiguracyjnego:

Zapisz nowy plik konfiguracyjny, a następnie uruchom następujące polecenie, aby uruchomić odwrotny serwer proxy:

Terminal pokazujący aktualny stan usługi stunnel w systemie.

Sprawdź, czy Twoja statyczna witryna działa teraz prawidłowo, otwierając swoją subdomenę w przeglądarce internetowej.

Zrzut ekranu przedstawiający przykładową stronę internetową działającą na darkhttpd z protokołem SSL.

Hostowanie własnej prostej witryny internetowej za pomocą darkhttpd to dopiero pierwszy krok w eksploracji wspaniałego świata usług webowych z własnym hostingiem. Dowiedz się, jak możesz tworzyć kanały RSS dla swoich mediów społecznościowych za pomocą RSS-Bridge.

Źródło obrazu: Ilya Pavlov przez Unsplash . Wszystkie zmiany i zrzuty ekranu autorstwa Ramces Red.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *