Nginx (vyslovováno jako „engine-X“) je výkonný, lehký a vysoce škálovatelný webový server a reverzní proxy server. Vyvinutý Igorom Sysoevem v roce 2002, dnes patří k nejrozšířenějším webovým serverům na světě (vedle Apache a Microsoft IIS).
Na většině moderních Linuxových distribucí lze Nginx nainstalovat přímo z oficiálních repozitářů:
# Ubuntu/Debian sudo apt update sudo apt install nginx # CentOS/RHEL/Fedora sudo dnf install nginx # Fedora / RHEL 8+ # nebo sudo yum install nginx # starší verze
Po instalaci je služba obvykle automaticky spuštěná a povolená při startu systému.
Konfigurační soubory Nginx se nacházejí většinou v:
server { listen 80; server_name example.com www.example.com; root /var/www/example.com; index index.html index.htm; location / { try_files $uri $uri/ =404; } }
server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; root /var/www/example.com; index index.html; location / { try_files $uri $uri/ =404; } } # Přesměrování HTTP → HTTPS server { listen 80; server_name example.com; return 301 https://$server_name$request_uri; }
| Direktiva | Popis |
|---|---|
| listen | Port, na kterém server naslouchá (např. `80`, `443 ssl`) |
| server_name | Název domény |
| root | Kořenový adresář webu |
| index | Výchozí soubor při požadavku na adresář |
| location | Definuje chování pro určitou cestu URL |
| proxy_pass | Přesměrování požadavku na backend server |
| try_files | Hledá soubory v pořadí a vrací první nalezený nebo fallback |
location /api/ { proxy_pass http://127.0.0.1:3000/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; }
sudo nginx -t # test konfigurace sudo systemctl reload nginx # načtení nové konfigurace sudo systemctl restart nginx # restart serveru sudo systemctl status nginx # stav služby