Podstawy

🟣 ROZSZERZENIE2 min czytaniaPostęp: 127/233

Serwer WWW (Apache)

Nieukończona

Postępy nie są zapisywane. Zarejestruj się lub zaloguj, aby śledzić postępy w kursach.

Serwer WWW (Apache)

Scenariusz z życia

Firma ma mieć stronę wewnętrzną lub publiczną. Serwer WWW na Linuxie to często Apache (httpd) lub nginx. Apache: moduły, virtual hosty (wiele stron na jednej maszynie), katalog główny, indeksy, logi. Konfiguracja w /etc/apache2/ (Debian/Ubuntu) lub /etc/httpd/ (RHEL). Bez poprawnego virtual hosta i uprawnień do katalogów strona nie załaduje się lub zwróci 403.

Co się dzieje w systemie

Apache nasłuchuje na porcie 80 (HTTP) lub 443 (HTTPS). VirtualHost: wiele ServerName/ServerAlias na jednym IP, każdy z własnym DocumentRoot i opcjami. Procesy httpd działają jako użytkownik (np. www-data) — pliki w DocumentRoot muszą być czytelne dla tego użytkownika. Logi: access.log, error.log — kto wszedł i jakie błędy. Moduły: mod_ssl (HTTPS), mod_rewrite (przekierowania), mod_auth (uwierzytelnianie).

Co administrator zyskuje

Jedna maszyna może serwować wiele stron (virtual hosty); centralne logi i konfiguracja. Znajomość Apache (lub nginx) to podstawa przy hostingu, proxy, wewnętrznych portalach.

Typowy błąd

DocumentRoot z niewłaściwymi uprawnieniami — 403 Forbidden. Albo: brak lub błąd w VirtualHost — domyślna strona lub 404. Albo: po zmianie konfiguracji brak reload/restart Apache. Albo: zostawienie strony na HTTP bez przekierowania na HTTPS — dane w cleartext.

Myślenie administratora

Strona = VirtualHost + DocumentRoot + uprawnienia (właściciel/katalog czytelny dla użytkownika Apache). Błąd = error.log i access.log. Po zmianie konfiguracji: apachectl configtest, potem reload. Produkcja = HTTPS i przekierowanie z HTTP.

Zapamiętaj – 4 fakty praktyczne

  • Apache: konfiguracja w /etc/apache2/ lub /etc/httpd/; VirtualHost dla wielu stron na jednym serwerze.
  • DocumentRoot musi być czytelny dla użytkownika, pod którym działa Apache (np. www-data).
  • Logi: access.log (żądania), error.log (błędy) — pierwsze miejsce przy diagnostyce.
  • Po zmianie konfiguracji: configtest, reload/restart; produkcja = HTTPS.
Notatki (opcjonalnie)