Máte hotovou aplikaci ve Flasku nebo Djangu a potřebujete ji dostat na server? Python web se nasazuje trochu jinak než PHP stránka — klíčové je virtuální prostředí a WSGI server. Tento návod vás provede nasazením krok za krokem. Pokud teprve vybíráte hosting, začněte tím, co dělá hosting Python-ready.
Než začnete: co budete potřebovat
Potřebujete hosting s podporou Pythonu (správná verze, přístup k pip), SSH a kód s requirements.txt. Na spravovaném hostingu často najdete průvodce „Setup Python App"; na VPS si prostředí připravíte sámi.
1. Nahrání kódu a virtualenv
Nahrajte kód (nejčistěji git clone přes SSH) a vytvořte virtuální prostředí: python3 -m venv venv a aktivujte ho source venv/bin/activate. Tím izolujete závislosti aplikace od systémového Pythonu. Na spravovaném hostingu virtualenv obvykle vytvoří průvodce za vás.
2. Instalace závislostí
V aktivovaném prostředí spusťte pip install -r requirements.txt. U Djanga pak nastavte produkční proměnné (SECRET_KEY, DEBUG=False, ALLOWED_HOSTS) a spusťte migrace: python manage.py migrate.
3. WSGI server: gunicorn
Python web nespouštíte vývojovým serverem (flask run, runserver) — ten není pro produkci. Potřebujete WSGI server, nejčastěji gunicorn: gunicorn app:app (Flask) nebo gunicorn projekt.wsgi (Django). Aby proces běžel trvale a restartoval se po pádu, spusťte gunicorn pod správcem (systemd, Supervisor) nebo použijte Passenger, který to řeší za vás na spravovaném hostingu.
4. Statické soubory a doména
U Djanga před spuštěním shromážděte statické soubory: python manage.py collectstatic. Pak před gunicorn postavte reverse proxy (nginx nebo Passenger), která obslouží doménu, HTTPS a statické soubory. Ověřte, že ALLOWED_HOSTS obsahuje vaši doménu — jinak Django požadavek odmítne.
Časté problémy
- 500 po nasazení — typicky špatný
ALLOWED_HOSTS, chybějícícollectstaticneboDEBUG=Falsebez nastaveného statického serveru. - ModuleNotFoundError — gunicorn neběží ve správném virtualenv.
- Špatná verze Pythonu — framework vyžaduje novější; přepněte v panelu.
- Statické soubory se nenačítají — chybí
collectstaticnebo nesprávná cesta v nginx.
Shrnutí
Nasazení Python aplikace stojí na čtyřech krocích: virtualenv → pip install → gunicorn (WSGI) → reverse proxy a statické soubory. Když si předem ověříte, že hosting umí spustit WSGI server a dá vám virtualenv, je zbytek otázka pár příkazů. Poskytovatele s podporou Pythonu porovnáte v naší kategorii Python hosting.

