# Vypnutie starých verzií PHP v hostingovom paneli

> Vypnutie starých verzií PHP bez výpadku webov: zistiť využitie, najprv zablokovať, potom odinštalovať. S overeným postupom pre Plesk a kontrolou.

Zdroj: https://phpsos.de/sk/blog/alte-php-versionen-abschalten/  
Stav: 25.10.2026  
Poskytovateľ: PHP SOS, Núdzová pomoc pri PHP a bezpečnosť serverov. Okamžitá pomoc cez WhatsApp: https://wa.me/491736494914?text=Dobr%C3%BD%20de%C5%88%2C%20PHP%20SOS%2C%20potrebujeme%20pomoc%20s%20na%C5%A1%C3%ADm%20serverom%20s%20PHP.%20Spolo%C4%8Dnos%C5%A5%3A%20%E2%80%A6%20Web%3A%20%E2%80%A6

**Stručne:** Staré verzie PHP vypnete najbezpečnejšie v troch fázach: zistiť využitie, verziu zablokovať a pozorovať, až potom odinštalovať. V Plesku sa dá handler najprv deaktivovať, takže sa už nedá vybrať, a neskôr odstrániť v časti Aktualizácie a komponenty. Každá odstránená verzia je o jednu menej, ktorú budete musieť pri ďalšej zraniteľnosti typu PHP2Shell zaplátať a reštartovať.

## Prečo upratovať práve teraz?

Týždeň po PHP2Shell ukázal mnohým adminom, koľko verzií PHP je na ich serveroch nainštalovaných. Každú z nich bolo treba skontrolovať, každá potrebovala aktualizáciu alebo prechodné opatrenia, každá služba reštart. Pre PHP 8.1 a staršie existujú len minimálne backporty zdrojového kódu, pre PHP 8.2 podpora končí 31. 12. 2026.

S touto skúsenosťou v čerstvej pamäti je správny čas upratať. Ako vôbec nájsť všetky inštalácie, opisuje článok [Viac verzií PHP na jednom serveri](https://phpsos.de/sk/blog/mehrere-php-versionen-server/). Tu ide o ďalší krok: riadené vypnutie.

## Fáza 1: zistiť využitie

Skôr než niečo vypnete, musíte vedieť, kto verziu používa. Weby sú zjavná časť. Menej viditeľné sú subdomény, testovacie inštalácie, cronjoby, skripty a komponenty panela.

V Plesku príkaz `plesk bin php_handler --list` vypíše všetky zaregistrované handlery. Pomocou `--get-usage` Plesk podľa dokumentácie ukáže, ktoré domény používajú konkrétny handler. Ani jeden z príkazov nič nemení.

```bash
# Plesk: všetky handlery a domény, ktoré handler používajú
plesk bin php_handler --list
plesk bin php_handler --get-usage -id <handler-id>

# Všeobecne: cronjoby, ktoré volajú konkrétnu verziu PHP
grep -rE "php(7|8\.0|8\.1)" /etc/crontab /etc/cron.d /var/spool/cron 2>/dev/null
```

Skontrolujte navyše prístupové logy dotknutých webov: testovacia inštalácia, ktorá mesiace nedostala žiadnu požiadavku, je kandidátom na odstránenie, nie na migráciu. Pri každej starej verzii si poznačte, kto ju používa a prečo.

Opýtajte sa aj ľudí, ktorí s webmi pracujú. Redakcie, agentúry a odborné oddelenia často poznajú postupy, ktoré nie sú v žiadnom zozname: ročný export pre účtovníctvo, formulár pre veľtrh, rozhranie na systém hospodárenia s tovarom. Čo na starej verzii závisí tam, to sa inak ukáže až vtedy, keď to chýba.

## Fáza 2: zablokovať a pozorovať

Medzikrok zabráni tomu, aby sa verzia znovu priradila, bez toho, aby sa hneď zmazala. V Plesku je na to možnosť deaktivovať jednotlivé handlery. Podľa dokumentácie Plesku sa deaktivovaný handler už nedá vybrať v nastaveniach PHP webu; verzia ostáva nainštalovaná. Na príkazovom riadku sa to robí príkazom `plesk bin php_handler --disable -id <handler-id>`.

Domény, ktoré ešte používajú starú verziu, prepnite vopred po dohode so zodpovednými osobami na podporovanú verziu. Ako to vyzerá z pohľadu prevádzkovateľa webu, opisuje článok [Zmena verzie PHP v zákazníckej zóne hostingu](https://phpsos.de/sk/blog/php-version-hosting-aendern/). Výber vhodného handlera vysvetľuje článok [Plesk: ako rozumieť handlerom PHP](https://phpsos.de/sk/blog/plesk-php-handler/).

Počas doby pozorovania sledujte chybové hlásenia v logoch, chýbajúce výsledky cronjobov a spätnú väzbu používateľov. V iných paneloch sa funkcie volajú inak; pozrite si tam dokumentáciu výrobcu.

> **Tip:**
> Koniec doby pozorovania určte ako termín a pomenujte, kto potom odinštalovanie schváli. Inak sa z medzikroku stane trvalý stav a stará verzia na serveri napokon ostane.

## Fáza 3: odinštalovať

Až keď doba pozorovania uplynie bez nápadností, verziu úplne odstráňte. V Plesku sa to podľa dokumentácie robí v Tools & Settings, Updates, Add/Remove Components, v oblasti Web hosting pri verziách interpretera PHP. Nainštalované verzie sú tam označené a dajú sa vybrať na odstránenie.

Na serveroch bez panela túto úlohu preberá správa balíkov. Skôr si zálohujte konfiguráciu verzie, napríklad `/etc/php/7.4/` v Debiane a Ubuntu, aby ste mohli v prípade núdze spätne zistiť, aké nastavenia platili.

```bash
# Zálohovať konfiguráciu, potom odstrániť balíky jednej vetvy (príklad Debian/Ubuntu, PHP 7.4)
tar czf /root/php74-konfiguration.tar.gz /etc/php/7.4/
apt remove 'php7.4*'
```

Po odstránení sa oplatí kontrola. V Plesku dokumentácia odporúča `plesk bin php_handler --reread`, aby sa po zmenách v binárkach PHP znovu načítali informácie o handleroch. Skontrolujte navyše, či servisné plány ešte neodkazujú na odstránenú verziu.

## Typické úskalia

| Úskalie | Ako ho spoznáte | Čo pomôže |
|---|---|---|
| Komponent panela závisí od verzie | Panel pri odstraňovaní hlási závislosť | Komponent najprv prestavať alebo verziu ponechať |
| Servisný plán odkazuje na starú verziu | Nové weby dostanú starú verziu alebo chybové hlásenie | Upraviť plán, potom verziu odstrániť |
| Cronjob volá pevnú cestu | Skript po odstránení zlyháva | Zmeniť cestu na podporovanú verziu |
| Aplikácia nebeží na novej verzii | Chyba po prepnutí v chybovom logu | Aplikáciu aktualizovať alebo migrovať |

Ak sa aplikácia nedá povýšiť na podporovanú verziu, vypnutie starej verzie už nie je otázkou konfigurácie, ale migračným projektom. Riziká zastaraných vetiev opisuje sprievodca [Koniec životnosti PHP: riziká zastaraných verzií](https://phpsos.de/sk/ratgeber/php-end-of-life-risiken/).

## Ďalší kandidát je už známy

Upratovanie nie je jednorazová akcia. Už 31. 12. 2026 vypadáva PHP 8.2 z podpory projektu PHP. Kto teraz odstraňuje verzie až po 8.1, mal by zároveň určiť, ako to bude s 8.2. Inak sa tá istá hra začne znova o niekoľko týždňov.

Osvedčilo sa jednoduché pravidlo pre server: ponúkajú sa len vetvy, ktoré projekt PHP podporuje. Každá vetva dostane pri zriadení dátum, kedy sa znovu preverí, podľa konca podpory na php.net. Súvislosti tohto cyklu vysvetľuje stránka [Verzie PHP a cyklus vydávania](https://phpsos.de/sk/php/release-zyklus/).

Kto má ako poskytovateľ hostingu alebo agentúra na serveri zákazníkov, mal by ich informovať včas. Oznámenie s dátumom, žiadosť o prepnutie a ponuka podpory zabránia tomu, aby v deň uzávierky vypadli weby. Zákazníci, ktorých aplikácia nejde s dobou, tak včas rozpoznajú, že sa chystá aktualizácia alebo migrácia, a môžu s ňou plánovať.

## Ako konkrétne pomáha PHP SOS?

- Zistíme, ktoré weby, cronjoby a komponenty panela používajú ktorú verziu PHP.
- Po dohode prepneme domény na podporované verzie a zablokujeme staré handlery.
- Po dobe pozorovania staré verzie kontrolovane odstránime a výsledok preveríme.
- Tam, kde aplikácie nejdú s dobou, naplánujeme [migráciu z PHP 8.1 a staršieho](https://phpsos.de/sk/leistungen/php-migration-legacy/).


## Časté otázky

**Prečo by som mal odstrániť nepoužívané verzie PHP?**  
Každú nainštalovanú verziu treba pri každej zraniteľnosti skontrolovať, aktualizovať a reštartovať. Staré vetvy ako PHP 8.1 a staršie už od projektu PHP nedostávajú aktualizácie. Nepoužívané verzie prinášajú len riziko a námahu.

**Aký je rozdiel medzi deaktiváciou a odinštalovaním?**  
Pri deaktivácii ostane verzia nainštalovaná, ale už sa nedá znovu vybrať. Pri odinštalovaní sa zo servera odstráni. Deaktivácia je bezpečný medzikrok, ktorým zistíte, či niečo nechýba.

**Môže odstránenie verzie PHP narušiť funkcie panela?**  
Áno. Niektoré komponenty panela, napríklad webmail alebo správcovské nástroje, závisia od konkrétnej verzie PHP. Takéto závislosti vyjasnite pred odstránením; panel na ne spravidla upozorní.

**Ako dlho by mala trvať doba pozorovania?**  
Dosť dlho na to, aby všetky pravidelné procesy prebehli aspoň raz, teda aj mesačné cronjoby a exporty. Dĺžku určte spolu s odbornými oddeleniami.

## Zdroje

- [Dokumentácia Plesk: inštalácia a odstránenie PHP](https://docs.plesk.com/en-US/obsidian/administrator-guide/75153/)
- [Dokumentácia Plesk: php_handler](https://docs.plesk.com/en-US/obsidian/cli-linux/using-command-line-utilities/php_handler-php-handlers.72490/)
- [php.net: podporované verzie](https://www.php.net/supported-versions.php)
