PHP upgrade 5.4

Het einde van PHP versie 5.3 is in zicht, php upgrade 5.4 noodzakelijk.

Voor versie 5.3 worden alleen nog kritieke patches uitgebracht, maar ook dat stopt binnenkort.
Om de veiligheid en de stabiliteit van onze servers te kunnen blijven garanderen is een PHP upgrade naar 5.4 noodzakelijk. Veel andere hostingbedrijven hebben de upgrade al eerder doorgevoerd, bij vele gaf dit problemen met de klanten websites. Wij hebben daarom eerst afgewacht zodat verschillende opensource pakketten klaar waren voor PHP 5.4.
Bij Mangelot Hosting hadden wij deze upgrade gepland staan voor het einde van mei 2014, echter i.v.m. recente wereldwijde ontwikkelingen in de SSL beveiliging (o.a. heartbleed bug ontdekt afgelopen Mei) hebben we de upgrade uitgesteld.
Momenteel is SSL stabiel en goed beveiligd, zodat wij de planning hebben gemaakt om vanaf volgende week te starten met de upgrade naar PHP 5.4. Deze upgrade zal in fases gebeuren en per server.

Wat is PHP ?

PHP (Hypertext Preprocessor) is een scripttaal, die bedoeld is om op webservers dynamische webpagina’s te creëren.
Nagenoeg alle websites gebruiken tegenwoordig PHP. Gebruikt u een CMS om de inhoud van uw website te beheren, heeft u een webshop of een contact formulier? Dan gebruikt uw website PHP en is dit bericht belangrijk voor u of uw webdesigner.

Wat betekent de upgrade van PHP voor uw website?

Omdat de upgrade een grote verandering voor u kunt betekenen hebben wij voor u hieronder van een aantal belangrijke CMS systemen op een rijtje gezet, en hierbij aangegeven welke patches nodig zijn.

Handige tip: op nagenoeg alle servers levert Mangelot Hosting het hulp programma Installatron. Hiermee installeert u met enkele ‘kliks’ complete CMS omgevingen of webapplicaties.
Belangrijker nog: via Installatron kunt u de geïnstalleerde applicatie eenvoudig upgraden naar een nieuwere versie. Heeft u een ondersteunde applicatie zelf geüpload en geïnstalleerd? Meestal kan Installatron deze ‘importeren’ en beheren!

WordPress versies lijken goed te werken met PHP 5.4. Het grootste probleem met WordPress kunnen de plug-ins zijn. Mocht u een wit scherm krijgen (fatal PHP error) of een foutmelding kijk dan voor tips hieronder. Om de huidige versie van WordPress te downloaden: wordpress.org/download/.

Joomla versies 1.6.x, 1.7.x, 2.5.x en 3.x werken allemaal met PHP5.4, voor verdere informatie zie: www.joomla.org/technical-requirements.html. Maar ook hier kunnen plug-ins problemen geven. De oude versie Joomla 1.5 heeft serieuze veiligheidsproblemen en is een duidelijk doelwit voor hackers, wij adviseren ook dan ook dringend om deze versie niet meer te gebruiken en zo snel als mogelijk te upgraden.

Drupal versie 7 zou goed moeten werken met PHP5.4 maar de oudere versie 6 werkt niet met 5.4, voornamelijk door plugins. Voor verdere informatie over PHP compatibiliteit: drupal.org/requirements/php en om de nieuwste versie 7.26 te downloaden ga naar drupal.org/download.

CMS Made Simple versies 1.7 “Cape Verde” of hoger zullen allemaal functioneren met PHP5.4. Verbeteringen in PHP error reporting zijn gedaan in version 1.9 “Bora Bora” deze wordt ook aanbevolen. De huidige versie is CMS 1.11.10 “Pinzon” die hier te downloaden is : www.cmsmadesimple.org/downloads/

Magento Community Editions 1.6.x, 1.7.x en 1.8.x hebben de “PHP5.4 support patch” nodig, die kan worden gedownload via: www.magentocommerce.com/download

Zen Cart versions 1.5.0 en 1.5.1 hebben patches nodig om te kunnen functioneren met PHP5.4. Oudere versies 1.3.8 en 1.3.9 zullen niet werken met PHP5.4. De volgende versie 1.5.2 zal natuurlijk wel werken met 5.4 maar dit is een beta versie die wij niet aanbevelen voor “live” websites. Voor verdere informatie: www.zen-cart.com/content.php?48-what-are-the-server-requirements-to-run-zen-cart.
Zen Cart patches vindt u via de onderstaande links:
•CHANGE-427 – Fix voor geheugenlek met PHP 5.3/5.4,
•CHANGE-616 – Voor consistentie en PHP 5.4 compatibiliteit $_SESSION[‘shipping’] moet altijd een array zijn, zie ook dit forum artikel
•date.timezone patch voor v1.5.1/1.5.0/1.3.9 op PHP 5.3/5.4/5.5

openCart geeft geen officiële informatie over PHP5.4 compatibility, maar de versies 1.5.4.x of hoger zouden moeten werken. De huidige versie is 1.5.6.1.
Voor verdere informatie en downloads zie: www.opencart.com/index.php?route=download/download

PrestaShop geeft geen definitief advies over PHP5.4 compatibility maar de gebruikers geven aan geen problemen te ervaren met PrestaShop versie 1.5.0 of hoger.
Omdat PS 1.4.x is niet langer actief ontwikkeld wordt, adviseren wij wel een upgrade naar 1.5.x om uw website in ieder geval veilig te houden, download: www.prestashop.com/en/download.

osCommerce is compatibel met PHP5.4 vanaf versie 2.3.3.0 of hoger:
www.oscommerce.com/Products http://library.oscommerce.com/Online&en&oscom_2_3&release_notes&v2_3_3.

Troubleshooting

Hieronder volgen nog wat ‘tips and tricks’ voor wanneer u problemen mocht ondervinden nadat PHP geüpgraded is naar versie 5.4:

Wit (leeg) scherm of 500 – Interne Server Fout: Dit geeft nagenoeg altijd aan dat uw applicatie niet uitgevoerd kan worden door een incompatibiliteit in uw PHP-scripts.
Ter beveiliging van uw omgeving worden deze foutmeldingen standaard niet getoond op de website, maar kunt u eenvoudig nazien in het DirectAdmin control panel via ‘Apache fout log’ op de pagina ‘Site Samenvatting / Statistieken / Logs’.
Meer informatie over DirectAdmin vindt u op onze Support pagina.

Geen Database Connectie: Een webapplicatie welke een database gebruikt kan een leeg scherm of een “unable to connect to database” foutmelding geven na de upgrade naar PHP5.4. Om dit op te lossen noteert u eerst de huidige database gebruikersnaam en wachtwoord.
Log hierna in op uw DirectAdmin control panel, ga naar ‘MySQL beheer’ en selecteer de betreffende database. Verwijder de database gebruiker en maak deze hierna opnieuw aan. Hierna wordt de huidige database encryptie gebruikt voor het MySQL wachtwoord.
Let op bij verwijderen: verzeker uzelf ervan dat u de gebruiker verwijderd en niet de database zelf!

Custom modificaties en plugins. Zelfs wanneer uw hoofd applicatie al goed is, of is bijgewerkt naar een compatible versie, bestaat de kans dat onderdelen niet goed werken. Eventuele aanpassingen, plugins, extentions of modules zijn wellicht niet PHP5.4 compatible. Dit kan bijvoorbeeld gebeuren bij WordPress of Joomla. Om te achterhalen welke het probleem veroorzaakt, zet u alle plugins uit en test dan de website. Hierna de plugins een-voor-een aanzetten en weer testen. De Apache fout log kan u hierbij ook helpen, zie de eerste tip hierboven.

Waarom deze ingrijpende upgrade van PHP?

Het PHP project, en de ontwikkelaars ervan, stoppen met de updates en veilligheidsupdates van PHP 5.3 halverwege 2014. Dit betekent dat problemen niet meer opgelost zullen worden en de veiligheid niet meer zeker is. Dit maakt het zeer onverstandig om deze versies te blijven gebruiken op onze webservers en live websites. Om onze servers zo veilig mogelijk te houden, en de websites bereikbaar, is het dus absoluut nodig om deze upgrade door te voeren. De officiële verklaring van PHP kunt u nalezen op php.net/archive/2013.php#id2013-07-11-1

De belangrijkste PHP wijzigingen vanaf versie 5.4:
• Register globals, magic quotes
• De break/continue $var syntax is verwijderd
• De session_register/session_unregister functies zijn verwijderd
• Call_time_pass_reference is niet meer mogelijk
• De public magic methods mogen niet meer private of static zijn
• De tijdzone kan niet meer ingesteld worden via de TZ environment variabele

Heeft u nog vragen over de upgrade, wijzigingen, neem dan contact met onze support