Kategóriák
Tech

Miért ne használd a PHP régi verzióit?

Ez év decemberében véget ér a leggyakrabban alkalmazott PHP 5.6 verziójának támogatása. Ezáltal lezárul a PHP 5 hosszú fejezete, amely még 2004-ben kezdődött a PHP 5.0 bevezetésével. Mivel ebben az időszakban ér véget a PHP 7.0 verzió támogatása is, szeretnénk áttekintést nyújtani a következő lépéseinkről, illetve pár okra is szeretnénk rávilágítani, miért érdemes a PHP régi verzióit elkerülni.

A PHP életciklusa

A PHP a leggyakrabban használt script nyelv honlapok írásához. A W3Techs szerint a honlapok 80%-a ezt használja. A megosztott tárhelyek többsége esetében is ez az egyetlen elérhető lehetőség. Egyelőre a Webonic-nál is. Ebben a cikkben a PHP-t úgy is értelmezzük mint egy szoftverkörnyezetet, amely biztosítja a honlap működését. Például a WordPress is egy PHP-alapú tartalomkezelő és blog-rendszer, azaz teljes mértékben PHP nyelven íródott.

Ahogy minden szoftvernek, úgy a PHP-nek is megvan a maga életciklusa. Rendszeresen kerülnek kibocsátásra új verziók, amelyek új funkciókat tesznek elérhetővé, ill. eltávolítják az előző verziók hiányosságait és hibáit. Az új frissítések általában évente érhetők el, és támogatásuk körülbelül két éven át tart. A probléma az, hogy a honlapok többsége olyan régi PHP verzión fut, amelynek a hivatalos támogatása már jópár éve megszűnt.

Támogatott PHP verziók a PHP.net alapján, 2018. október

Hogyan is néz ez ki nálunk és a világban

A globális trendet hogy értelmezni tudjuk, felhasználhatjuk a wordpress.org élő statisztikáit. A WordPress oldalak csupán 25%-a használja a PHP 7 valamelyik verzióját. Csaknem 40% esetében alkalmazzák a hamarosan nem támogatott PHP 5.6 verziót, a maradék 35% a még régebbi PHP 5.5 – 5.2 verziókon fut. Mindemellett a WordPress oldalak túlnyomó többsége a legújabb WordPress verziót használja, amely kompatibilis a PHP 7-tel. A népszerű Yoast SEO plug-in alkotói is rámutattak erre a kedvezőtlen helyzetre.

A jelenleg alkalmazott PHP verziók a WordPress-en, forrás wordpress.org

Hasonló a helyzet a mi infrastruktúránkban is. Ez a 2018 nyarán készült statisztika talán meglepő, ám a felhasználóink csaknem 70%-a az elavult PHP 5.2 – 5.5 verzióinak egyikét használja a tárhelyén. A PHP 5.5 verzió dominál (az okokat lsd. lejjebb). Az év végén ehhez a csoporthoz csatlakoznak azok a felhasználók is, akik a PHP 5.6 vagy 7.0 verziót használják. Mindkettő esetében 2018 decemberében megszűnik a hivatalos támogatás.

Áttekintés az alkalmazott PHP verziókról a Webonic infrastruktúrában, 2018 nyara

Ez a trend nem igazán tűnik optimálisnak, ezért úgy döntöttünk, javítunk a helyzeten. Szeretnénk minél több felhasználó esetében elérni azt, hogy weboldalaikat az újabb verziók egyikén futassák – minden országban, ahol jelen vagyunk. Ha ez a kezdeményezés a Webonic-on túl is javít a jelenlegi állapotokon, abból az egész közösség profitál.

A régi PHP verziók használatának leggyakoribb okai

A gyakorlatban a következő okokat látjuk arra vonatkozóan, hogy a felhasználók miért a régi PHP verziót használják:

  • A honlaptulajdonosok nem tudnak róla vagy nem foglalkoznak vele. Az esetek többségében ez teljesen elfogadható – az ilyen jellegű feladatok megoldását a fejlesztőktől, a honlap kezelőitől vagy közvetlenül a hosztingtól várják. Ebből az okból kifolyólag a PHP 5.5 a legelterjedtebb tárhelyeinken – hosszú ideig ezt a verziót kínáltuk alapértelmezettként, és a felhasználók sosem módosították azt. Már hosszabb ideje a PHP 7.2 az alapértelmezett nálunk.
  • A kompatibilitás biztosítása a tartalomkezelő rendszerek, bővítmények frissítése során és az azt követő tesztelés időigényes feladat minden fejlesztőnek és honlapkezelőnek. Ha a weboldalt évekkel ezelőtt készítették el, és azt követően nem foglalkoztak vele, az újabb PHP verzióra való frissítés nem feltétlenül egyértelmű és olcsó feladat. Kisebb gond ez a modern open-source rendszerek esetében. Ugyanis az esetek többségében ott elég “csak” frissíteni. A grafikonon azonban látható, hogy még ez sem elég.
  • A hosztingok többsége kerüli a témát. Az ok banális – mivel a weboldal kompatibilitás biztosítása a honlaptulajdonosoknak gondot okoz, a kötelező frissítés több ezer honlap működésében okozhat fennakadást. És ezt egy hoszting sem akarja. A tulajdonosok sem. Épp ezért hívjuk fel a figyelmet a változásra még időben.

A régi PHP verziók hátrányai és az azokban rejlő kockázatok

A felhasználó szemszögéből leginkább a biztonság és a teljesítmény hiányosságai vethetnek fel aggályokat a régi PHP verziók esetében.

Gyenge biztonság

A legnyomósabb indok a PHP frissítésére a biztonság. Az aktív támogatás ideje alatt olyan frissítések látnak napvilágot, amelyek orvosolják a hiányosságokat. Ezek a CVE Details oldalon is figyelemmel kísérhetők.  A lenti képen látható, mennyi kritikus hibát fedeztek fel az egyes években.

A PHP-ban felfedezett biztonsági rések száma évek szerint. Forrás CVE Details.

Gyenge teljesítmény

A két évvel ezelőtt kiadott PHP 7.0 a honlapok forradalmi gyorsulását eredményezte az azt megelőző PHP 5.6-tal szemben (a PHP 6 kimaradt). Ez leginkább a tartalomkezelő rendszerek esetében volt szemmel látható, amelyek így a kérések többszörösét voltak képesek feldolgozni ugyanannyi idő alatt.

Az átlagos válaszidő PHP 7 (zöld vonal) esetében kb. 15%-kal jobb, mint a PHP 5.6-nál Opcache-sel (vastagabb kék vonal).

A WordPress hosztingot kínáló Kingstában dolgozó “kollégák” kiterjedt összehasonlítást végeztek el a PHP (és a HHVM) egyes verzióinak teljesítményére vonatkozóan. A WordPress és a WooCommerce 3x annyi kérést képest feldolgozni PHP 7.2-n, mint PHP 5.6-on. A régebbi 5.5 – 5.2 esetében a különbség még nagyobb…

Img src: Kinsta

A PHP újabb verziói mindig biztonságosabbak és a teljesítményük is jobb. A modern tartalomkezelő rendszerekben is gyakran feltétel a használatuk. Például a WordPress jelenlegi verziója hivatalosan a PHP 7.2 verzióját kéri. Sőt, a Drupal 2019 márciusában megszünteti a PHP 5.6 és öregebb verziók támogatását.

A nem támogatott PHP verziók befejezésének ütemterve

Több évnyi meghosszabbított támogatás után (a PHP 5.2 esetében ez több mint 8 év) 2019-ben végleg megszüntetjük néhány PHP 5 verzió támogatását a Webonic-nál. Ezzel egyidőben bevezetjük a rendszeres karbantartási folyamatot – amely az újabb PHP verziók hozzáadásán kívül az elavult verziók gyorsabb befejezését is magába foglalja. Ezért jövőre a PHP 7.0 verziót is kikapcsoljuk.

2019. április

  1. PHP 5.2 támogatásának vége és a tárhelyek frissítése PHP 5.3-ra
  2. PHP 7.0 támogatásának vége és a tárhelyek frissítése PHP 7.1-re

2019. szeptember PHP 5.4 a 5.5 támogatásának vége és a tárhelyek frissítése PHP 5.6-ra.

A szervereken 2021/2022-ig meghagyjuk a PHP 5.6-ot, illetve a PHP 5.3-at olyan régi honlapok esetében, amelyeket már nem lehet frissíteni. Ezeket a verziókat mi fogjuk karbantartani saját költségre, és adminisztrátoraink gondoskodnak majd a kritikus problémák eltávolításáról. A hosszútávú alkalmazásukat azonban nem javasoljuk, és használatuk valószínűleg díjat von maga után a jövőben.

Ügyfeleinket fokozatosan, hullámokban fogjuk értesíteni. Ha valakit az áprilisi időpont érint, a következő hetekben kapja meg a pontos információkat. Az új évben azokat szólítjuk meg, akik a szeptemberi turnusba tartoznak.

Teszteld honlapod kompatibilitását

Annak érdekében, hogy minél könnyebb legyen az átállás az újabb PHP verzióra, létrehoztunk egy eszközt a kompatibilitás tesztelésére. Ezen eszköz segítségével biztonságosan letesztelheted honlapod működését az újabb PHP-n. A teszt kizárólag a böngésződben valósul meg, a honlap éles működésére nincs hatással. Ha minden úgy működik, ahogy annak kell, frissítsd a PHP-t, és ne hagyd az utolsó pillanatra. Például az azonnali átállás PHP 5.5-ről PHP 5.6-ra tapasztalataink szerint nem okozhat gondot, és rögtön végrehajtható.

Az eszköz hamarosan elérhető közvetlenül a WebAdmin felületén.

Hogyan frissítsük a PHP-t tárhelyen

Ha Webonic ügyfél vagy, a PHP verziót bármikor frissítheted a WebAdmin felületén a Web –> PHP beállítások szekcióban.

Ha olyan szolgáltatónál van tárhelyed, amelyik nem teszi lehetővé az átállást a jelenleg támogatott PHP 7 verzióra, javasoljuk, hogy nézz körül más szolgáltatóknál is. Mi szívesen segítünk Neked. Ez év végéig élhetsz a Migráció akciónkkal, és ingyen tehetsz szert tárhelyre.

Vélemény, hozzászólás?

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük