Help! Mijn website werkt niet meer (met PHP8)

Afgelopen week ben ik door meerdere mensen benaderd die een site hebben bij provider Mijndomein. Mijndomein had besloten om eind december 2022 alle sites op hun servers over te zetten naar PHP8*. Via diverse mailingen hebben zij hun klanten hierop voorbereid. Veel website-eigenaren zijn leek op het gebied van websites en hebben het voor zich uitgeschoven om actie te ondernemen. Het gevolg is dat hun site opeens niet meer getoond wordt en een kritieke foutmelding geeft. Met wat coulance heeft Mijndomein, op verzoek van klanten, websites teruggezet naar versie PHP4, maar eind januari gaat daar de knop definitief om. Daarna is PHP7 niet meer beschikbaar bij Mijndomein.

Oplossingen voor nu

Voor één klant heb ik de site toch geschikt kunnen maken voor PHP8. Ik heb hiervoor updates uitgevoerd en bepaalde plug-ins uitgeschakeld en verwijderd . Een andere ondernemer die bij mij aanklopte heeft een hele oude site (meer dan 10 jaar oud), die ze graag nog even wil behouden terwijl ze plannen gaat maken voor een nieuwe site. Deze oude site geeft zoveel foutmeldingen in PHP8 dat het teveel tijd en geld gaat kosten om deze fouten eruit te halen. Dat is de investering niet waard. Om te voorkomen dat deze site straks niet meer te zien is, kan deze verhuisd worden naar mijn server tot er een nieuwe site is die wel geschikt is voor PHP8.

Museumserver

Onlangs is de server van Zin In Webdesign gemigreerd naar een nieuwe server waarop oudere versies van PHP (5 en 6) niet meer beschikbaar zijn. Er waren nog een drietal bejaarde Joomla-sites die al langer niet geupdate werden en ook niet werkten in een hogere versie van PHP. Deze drie sites heeft de provider verhuist naar een museum-server :). Voor alle andere sites, die al wel op versie 7.4 draaiden, is nu versie PHP8 beschikbaar gekomen. Maar op mijn server blijft PHP7.4 voorlopig nog wel beschikbaar, tot alle sites overgezet zijn naar PHP8. Met ruim 100 sites op de server vraagt dit tijd om deze updates zorgvuldig uit te kunnen voeren. Binnenkort is versie 7.4 ook ‘end of life’ en wordt dan niet meer onderhouden, dus op termijn moet dit bij alle sites wel uitgevoerd zijn.

Updaten naar PHP8

Overzetten van sites naar PHP8 dient met beleid uitgevoerd te worden. Vaak is het zo dat bepaalde plug-ins nog niet geschikt zijn en daardoor een foutmelding veroorzaken. Ook kan een thema zodanig gebouwd zijn dat dat niet goed gaat in PHP8.

Aanpak

  • Allereerst zorg je dat alles up-to-date is (uiteraard heb je dan ook een recente back-up gemaakt van bestanden en database)
  • Dan zet je in de beheerpanel van de provider de PHP-versie naar PHP8
  • Je checkt of de site nog werkt en alles nog getoond wordt zoals het de bedoeling is.

Debuggen voor PHP8

  • Krijgt je een foutmelding of werkt iets niet meer, dan kun je in WordPress, in het wp-config-bestand, de debug-functie aanzetten. Hiermee worden fouten zichtbaar.
  • In de foutmeldingen staat vaak precies in welke bestand, in welke regel en in welke plug-in of thema iets niet goed is.
  • Dan is het een goed idee om eerst te kijken of betreffende plug-ins nog nodig zijn. Wellicht is uitschakelen en verwijderen al een oplossing. Veel plug-ins worden op een bepaalde moment niet meer actief onderhouden. Wellicht is er inmiddels een actueel alternatief voor handen dat wel met PHP8 werkt.
  • Gaat het om plug-ins die je wilt behouden met een nog actieve helpdesk dan zou je contact kunnen zoeken met de plug-inmakers en de foutmelding aan hen voorleggen. Wellicht kunnen zij een aanpassing doen, waarna je de plug-in kunt updaten naar een versie die wel werkt met PHP8.
  • Zijn er problemen met het thema, check dan ook of de maker hiervan nog actief is met de ontwikkeling van dit thema. Check ook of het thema wel up-to-date is. Bepaalde aangekochte thema’s (via Themeforest bijvoorbeeld) geven niet zelf aan dat er een update beschikbaar is.

Ga in ieder geval niet zelf plug-ins verbeteren als er fouten in zitten. Bij een evt. update worden deze alsnog overschreven. Gelukkig is het goed mogelijk om te schakelen tussen de verschillende versies. Dus je kunt de versie altijd terug zetten naar 7.4 (tenzij je klant bent bij Mijndomein na 31 januari 2023)

*PHP is een scripttaal dat staat voor Hypertext Preprocessor en is een belangrijke taal voor het maken van dynamische webpagina’s.

Afbeelding van Liza Trinidad via Pixabay