Obsah
Apache na Linuxu: Instalace a správa
Nasazení Apache HTTP Serveru na systému Linux je standardním postupem pro hostování webových aplikací. Díky otevřenosti obou projektů nabízí toto spojení vysoký výkon, bezpečnost a téměř nekonečné možnosti konfigurace.
1. Instalace na hlavních distribucích
V Linuxu se Apache instaluje pomocí správce balíčků. Název balíčku se liší podle rodiny distribucí:
- Debian / Ubuntu:
sudo apt update && sudo apt install apache2
- RHEL / CentOS / Fedora / AlmaLinux:
sudo dnf install httpd
—
2. Správa služby (systemd)
Moderní linuxové distribuce používají pro správu služeb systém systemd. K ovládání Apache slouží příkaz systemctl:
sudo systemctl start apache2 # Spuštění serveru sudo systemctl stop apache2 # Zastavení serveru sudo systemctl restart apache2 # Restart (při velkých změnách) sudo systemctl reload apache2 # Znovunačtení konfigurace bez výpadku sudo systemctl status apache2 # Kontrola stavu a chyb
—
3. Struktura konfiguračních souborů
V Linuxu je konfigurace Apache rozdělena do logických celků (zejména na systémech Debian/Ubuntu):
- /etc/apache2/apache2.conf: Hlavní konfigurační soubor.
- /etc/apache2/sites-available/: Definice jednotlivých webů (Virtual Hosts).
- /etc/apache2/sites-enabled/: Symlinky na weby, které jsou aktuálně aktivní.
- /var/www/html/: Výchozí kořenový adresář, kde jsou uloženy HTML/PHP soubory webu.
—
4. Virtuální hostitelé (Virtual Hosts)
Virtuální hostitelé umožňují na jednom Linuxovém serveru (jedné IP adrese) provozovat více domén najednou. Apache pozná, který web zobrazit, podle hlavičky v HTTP požadavku.
<VirtualHost *:80>
ServerName www.priklad.cz
DocumentRoot /var/www/priklad
ErrorLog ${APACHE_LOG_DIR}/error.log
</VirtualHost>
—
5. Moduly a rozšíření
Síla Apache na Linuxu spočívá v jeho modularitě. Moduly lze snadno aktivovat pomocí nástrojů jako a2enmod:
- mod_rewrite: Pro hezké URL a přesměrování (vyžadováno např. WordPressem).
- mod_ssl: Pro zabezpečený protokol HTTPS.
- mod_proxy: Pro využití Apache jako reverzní proxy (např. před aplikaci v Node.js).
sudo a2enmod rewrite sudo systemctl restart apache2
—
6. Bezpečnostní aspekty na Linuxu
Při provozu Apache na Linuxu je nutné dbát na několik bezpečnostních pravidel:
- Firewall: Povolení portů 80 (HTTP) a 443 (HTTPS) pomocí
ufwnebofirewalld. - Oprávnění: Apache by měl běžet pod vlastním neprivilegovaným uživatelem (typicky
www-dataneboapache). - SELinux: Na distribucích jako RHEL/CentOS je třeba správně nastavit politiky SELinux, aby mohl Apache přistupovat k souborům.
Související články:
Tagy: it linux apache webserver sysadmin lamp infrastructure
