Dne 25. května jsme provedli malou, byť velmi důležitou aktualizaci PHP z verze 5.2.5 na verzi 5.2.6.
Verze 5.2.6 opravuje některé zásadní chyby v PHP. Tou nejvýznamnější je oprava funkce MkDir, která se nechovala korektně pod operačním systémem FreeBSD, na kterém provozujeme tarif Online. Z tohoto důvodu nemusely správně pracovat některé moduly v Joomla! a pravděpodobně i v jiných systémech.
A jak se chyba projevovala ?
Pokud cesta v parametru funkce MkDir měla na konci lomítko, adresář se nevytvořil a php hlásilo chybu „Warning: mkdir(): Unable to access …“. Bez koncového lomítka MkDir proběhl úspěšně.
Pro názornost malý příklad:
mkdir(‚/home/nejakyweb.cz/html/obrazky/novyadresar/‘); // neproběhlo
mkdir(‚/home/nejakyweb.cz/html/obrazky/novyadresar‘); // proběhlo
Bug je popsán na stránkách bugs.php.net. Nejvtipnější na celé chybě je to, že měla být opravena již dávno v dřívějších verzích, ale nebyla.
Ještě poznamenejme, že aktualizace se týkala pouze serverů s tarifem Online. Starších tarifů Standard a Profi, které jedou pod operačním systémem Linux, se chyba netýkala.