Stručně: Handler PHP v Plesku určuje, jak PHP pro web běží: jako aplikace FPM se sdíleným poolem, jako Dedicated FPM s vlastním poolem pro každý web, jako aplikace FastCGI nebo jako modul Apache (mod_php). Z hlediska bezpečnosti je na Linuxu zpravidla nejlepší volbou Dedicated FPM, nejhorší modul Apache. Plesk jej sám označuje jako zastaralý, resp. nezabezpečený, a u PHP2Shell vidí tým PHP nejvyšší riziko právě u mod_php.
Proč je handler víc než otázka výkonu
V Plesku vybíráte pro každý web verzi PHP a handler. Mnozí s handlerem zacházejí jako s detailem pro výkon a paměť. Rozhoduje ale také o tom, jak silně jsou weby od sebe odděleny, kde působí bezpečnostní nastavení a které procesy je po aktualizaci nutné restartovat.
Po PHP2Shell se tato volba stává konkrétní. Zranitelnosti CVE-2026-109618 a CVE-2026-109619 se týkají všech běžných provozních režimů, tým PHP ale hodnotí riziko u mod_php nejvýše. Kdo na svém serveru Plesk ještě provozuje domény s modulem Apache, měl by to nyní změnit. Jak verze zkontrolovat a zaplatovat, popisuje stránka Servery Plesk: kontrola a záplatování verzí PHP; zde jde o volbu provozního režimu.
Handlery PHP v Plesku v přehledu
Následující přehled vychází z dokumentace Plesku pro Plesk Obsidian, doplněné o bezpečnostní pohled. Na Linuxu lze handlery FPM podle Plesku volitelně poskytovat přes Apache nebo nginx, FastCGI vždy přes Apache.
| Handler | Poskytován přes | Izolace | Doporučení podle Plesku | Bezpečnostní pohled |
|---|---|---|---|---|
| Dedicated FPM application | Apache nebo nginx | vlastní pool pro každý web | Linux se sdíleným hostingem | nejlepší oddělení, vlastní hodnoty pro každý pool |
| FPM application | Apache nebo nginx | společný pool pro každou verzi PHP | dedikované servery s Linuxem | chybný web může rušit ostatní se stejnou verzí |
| FastCGI application | Apache (Linux) | trvalé procesy, dobré oddělení | servery s Windows | solidní, na Linuxu většinou nahrazeno FPM |
| Apache module (mod_php) | Apache | PHP v procesu webového serveru | nedoporučuje se | nejvyšší riziko PHP2Shell podle týmu PHP |
| CGI application | Apache | nový proces pro každý požadavek | nedoporučuje se | zastaralé |
Souvislosti k samotným provozním režimům vysvětlují stránky PHP-FPM vysvětleno a Proč nese mod_php nejvyšší riziko.
Společný, nebo vlastní pool?
Rozdíl mezi FPM a Dedicated FPM se často podceňuje. U běžného handleru FPM sdílejí podle Plesku všechny weby se stejnou verzí PHP jeden pool procesů. To šetří paměť, ale znamená to také: web, který dělá potíže, může stáhnout všechny ostatní se stejnou verzí, a sdílí se společná cache.
Dedicated FPM dává každému webu vlastní pool. Podle Plesku to zlepšuje izolaci a výkon, stojí to ale víc paměti. Z hlediska bezpečnosti je vlastní pool základem pro to, aby se nastavení jako open_basedir, limity paměti nebo limity uploadu mohla nastavit pro každý web zvlášť. Jak pooly důsledně oddělit, popisuje článek Izolace poolů PHP-FPM pro každý web.
nginx, nebo Apache: past .htaccess
Zvolíte-li handler poskytovaný přes nginx, mění se něco zásadního: podle Plesku tyto handlery soubor .htaccess ignorují. Co tam stojí, přestane působit.
To je bezpečnostní téma. Mnoho aplikací a administrátorů ukládá ochranná pravidla do .htaccess, například zákaz spouštění souborů PHP ve složkách uploadu nebo zákazy přístupu ke konfiguračním souborům. Po přechodu na nginx jsou tato pravidla tiše mimo provoz. Zkontrolujte proto před změnou, jaká ochranná pravidla v .htaccess stojí, a převeďte je do konfigurace nginx dané domény.
Změna handleru je změna bezpečnostní konfigurace. Poté cíleně otestujte, zda zablokované cesty zůstávají zablokované, a nejen zda se načte úvodní stránka.
Zkontrolovat a přepnout handler
Nejprve si udělejte přehled, které domény používají který handler. Příkazy jsou čistě čtecí.
# Všechny registrované handlery s ID, verzí a typem
plesk bin php_handler --list
# Domény, které používají určitý handler (ID ze seznamu)
plesk bin php_handler --get-usage -id <handler-id>
# Běží PHP v procesu Apache? (Debian/Ubuntu: apache2ctl, rodina RHEL: httpd)
apache2ctl -M 2>/dev/null | grep -i php
Při přepínání postupujte doménu po doméně:
- Zachytit ochranná pravidla z
.htaccess, pokud se nový handler poskytuje přes nginx. - Nastavit pro nový handler přechodné hodnoty proti PHP2Shell, například
session.upload_progress.enabled=0. U FPM patří jakophp_admin_valuedo dodatečných direktiv poolu, u FastCGI působí jiné cesty. - Přepnout handler v nastavení PHP domény, pokud možno nejprve na kopii.
- Otestovat funkce a zkontrolovat, zda doménu obsluhují procesy s aktuálním kódem.
- Pokud modul Apache nepoužívá žádná doména, handler deaktivovat.
V jakém pořadí přepínat?
Na vyrostlém serveru Plesk se zřídkakdy podaří přepnout vše za jeden den. Pořadí podle rizika pomáhá využít omezený čas rozumně:
- Nejprve domény s modulem Apache, protože tam je riziko od PHP2Shell podle týmu PHP nejvyšší a Plesk tak jako tak odrazuje.
- Pak domény s citlivými daty, například e-shopy, zákaznické portály nebo formuláře se zdravotními či smluvními údaji. Zde se vlastní pool vyplatí obzvlášť.
- Poté domény na starých verzích PHP, které je tak jako tak nutné přepnout. Handler a verzi lze změnit společně v jednom servisním okně.
- Nakonec přechod od společného k vlastnímu poolu u ostatních domén, pokud to paměť serveru dovolí.
Před posledním stupněm zkontrolujte využití paměti. Plesk upozorňuje, že Dedicated FPM potřebuje víc paměti, a u mnoha webů radí sledování. Server, který po přepnutí odkládá paměť na disk, je pomalý, a nedostatek paměti není právě u PHP2Shell dobrý stav.
Jak konkrétně pomáhá PHP SOS?
- Zjišťujeme, které domény na vašem serveru Plesk používají který handler, a domény s modulem Apache označujeme.
- Přepínáme na Dedicated FPM a ochranná pravidla z
.htaccesspřevádíme, kde je třeba, do konfigurace nginx. - Nastavujeme přechodné hodnoty a limity pro každý pool a ověřujeme, že působí ve webovém kontextu.
- V rámci hardeningu serveru deaktivujeme zastaralé handlery a konfiguraci dokumentujeme.
Časté dotazy
Jaký handler PHP Plesk doporučuje?
Podle dokumentace Plesku je FPM doporučeným handlerem na dedikovaných serverech s Linuxem, Dedicated FPM na linuxových serverech pro sdílený hosting a FastCGI na serverech s Windows. Modul Apache, CGI a ISAPI označuje Plesk jako silně zastaralé, resp. nezabezpečené.
Proč je handler modul Apache po PHP2Shell zvlášť kritický?
Handler odpovídá mod_php. Tým PHP hodnotí riziko PHP2Shell u mod_php nejvýše, protože tam byl předveden exploit ještě předtím, než se spustí kód aplikace. Navíc Plesk sám tento handler nedoporučuje.
Co se změní, když se PHP poskytuje přes nginx místo Apache?
Podle Plesku ignorují handlery poskytované přes nginx soubor .htaccess. Bezpečnostní pravidla, která tam stojí, například zákazy PHP ve složkách uploadu, pak přestanou platit a je nutné je převést do pravidel nginx.
Musím po změně handleru restartovat PHP?
Po změně zkontrolujte, jaké procesy PHP pro doménu běží a od kdy. U Dedicated FPM dostane doména vlastní pool. Starý proces se zastaralým kódem by pak pro doménu už neměl pracovat.
Je Dedicated FPM vždy nejlepší volba?
Pro izolaci ano, protože každý web dostane vlastní pool. Cenou je vyšší spotřeba paměti. Plesk radí servery s mnoha weby přitom sledovat.