PHP upgraden in de praktijk: versie controleren, overstappen, testen en verbergen

Beveiliging Gepubliceerd 2026-10-28 / Laatst gecontroleerd 2026-10-28 / Auteur Yuki Nakazawa

In 2026 is een kritieke PHP-kwetsbaarheid met een CVSS-score van 9.8 gepubliceerd. Van de Japanse sites waarvan de server een PHP-versie prijsgeeft, toont 59.5% nog altijd een versie die niet is bijgewerkt naar een gepatchte release (Yuki Nakazawa, Security Exposure Survey 2026; gegevens verzameld door Site Scouter). Dit artikel loopt de praktische stappen door: hoe u achterhaalt welke PHP-versie uw server draait, hoe u op shared hosting van versie wisselt, hoe u de site daarna controleert en hoe u ten slotte voorkomt dat de versiestring aan de buitenwereld wordt doorgegeven.

Dit artikel is ook in het Engels gepubliceerd op sitescouter.net en nkzw.jp, en in het Japans op sitescouter.net. Dit is de Nederlandse editie op Site Scouter, vertaald uit de Engelse versie.

Achterhaal eerst uw huidige PHP-versie

Afbeelding: Achterhaal eerst uw huidige PHP-versie
Afbeelding: Achterhaal eerst uw huidige PHP-versie

De eerste stap is weten wat er werkelijk draait. Er zijn meerdere manieren om dat te controleren; één ervan is genoeg.

Via het controlepaneel van uw hostingprovider

Afbeelding: Via het controlepaneel van uw hostingprovider
Afbeelding: Via het controlepaneel van uw hostingprovider

De meeste aanbieders van shared hosting hebben in hun controlepaneel een menu dat overeenkomt met "PHP settings" of "PHP version". Log in, open de instellingen van uw domein of site en u ziet welke PHP-versie momenteel actief is. Menunamen en hun plaats verschillen per aanbieder, dus raadpleeg de actuele handleiding van uw provider.

Via "Site Health" in WordPress

Afbeelding: Via "Site Health" in WordPress
Afbeelding: Via "Site Health" in WordPress

Gebruikt u WordPress, open dan in het beheergedeelte Tools → Site Health → Info. Het onderdeel "Server" toont de huidige PHP-versie. Er is geen plug-in voor nodig, waardoor dit voor WordPress-beheerders de eenvoudigste route is.

Met phpinfo() (laat het niet online staan)

Afbeelding: Met phpinfo() (laat het niet online staan)
Afbeelding: Met phpinfo() (laat het niet online staan)

Upload een PHP-bestand dat alleen <?php phpinfo(); ?> bevat en open het in een browser: u ziet dan uitgebreide informatie over de omgeving, inclusief de PHP-versie.

Verwijder het bestand zodra u de controle hebt gedaan. De uitvoer van phpinfo() bevat versienummers, configuratiewaarden en de lijst met geïnstalleerde modules — precies wat een aanvaller kan gebruiken. Wie het bestand online laat staan, geeft een plattegrond van de server weg. Behandel het als een tijdelijk bestand voor een eenmalige controle en verwijder het meteen.

Met /server/ van sitescouter.net de "van buitenaf zichtbare" versie bekijken

Afbeelding: Met /server/ van sitescouter.net de "van buitenaf zichtbare" versie bekijken
Afbeelding: Met /server/ van sitescouter.net de "van buitenaf zichtbare" versie bekijken

De bovenstaande methoden laten zien wat de server van binnenuit ziet. Wilt u zien wat uw server werkelijk aan bezoekers vertelt, gebruik dan de serverinformatiecheck van Site Scouter (/server/). Voer een URL in en u krijgt te zien of er een PHP-versie in de headers Server of X-Powered-By staat — een blik van buitenaf op de vraag of "PHP 8.1.x" voor derden zichtbaar is.

Het ondersteuningsschema van PHP en de kritieke kwetsbaarheid van 2026

Afbeelding: Het ondersteuningsschema van PHP en de kritieke kwetsbaarheid van 2026
Afbeelding: Het ondersteuningsschema van PHP en de kritieke kwetsbaarheid van 2026

Ondersteuningsschema

Afbeelding: Ondersteuningsschema
Afbeelding: Ondersteuningsschema

Hieronder staat de ondersteuningsstatus zoals php.net die publiceert (gecontroleerd op 27 oktober 2026). Data kunnen worden verlengd of gewijzigd, dus controleer ze opnieuw op php.net/supported-versions.php voordat u actie onderneemt.

Versie Status Einde actieve ondersteuning Einde beveiligingsupdates
8.5 Ondersteund (nieuwste) 2027-12-31 2029-12-31
8.4 Ondersteund 2026-12-31 2028-12-31
8.3 Alleen beveiligingsupdates 2025-12-31 2027-12-31
8.2 Alleen beveiligingsupdates 2024-12-31 2026-12-31
8.1 en ouder End of life (EOL) — Beëindigd
7.x / 5.x End of life (EOL) — Beëindigd

Ook de beveiligingsupdates voor 8.2 stoppen eind 2026. Draait u vandaag 8.2, dan moet u binnen het komende jaar overstappen op 8.3 of hoger. 8.1 en ouder krijgen helemaal geen patches meer en vragen nu al om actie.

Ondertussen toont 52.3% van de Japanse sites die een PHP-versie prijsgeven een versie die end of life is (Yuki Nakazawa, Security Exposure Survey 2026; gegevens verzameld door Site Scouter). Wordt er in een EOL-versie een kwetsbaarheid gevonden, dan verschijnt er geen fix.

Aandeel PHP-versies die end of life zijn, per regio (aandeel van de sites die een PHP-versie prijsgeven)
Aandeel PHP-versies die end of life zijn, per regio (aandeel van de sites die een PHP-versie prijsgeven)
Japanse hosts per PHP-minorversie (hosts die een versie prijsgeven)
Japanse hosts per PHP-minorversie (hosts die een versie prijsgeven)

De kritieke kwetsbaarheid van 2026 en de gepatchte versies

Afbeelding: De kritieke kwetsbaarheid van 2026 en de gepatchte versies
Afbeelding: De kritieke kwetsbaarheid van 2026 en de gepatchte versies

In 2026 zijn voor PHP kwetsbaarheden gepubliceerd met een CVSS-score van 9.8 (Critical).

CVE CVSS Samenvatting Laagste versie met de fix
CVE-2026-109618 9.8 Use-after-free. Veroorzaakt door een longjmp bij een out-of-memory-situatie; geheugen kan tussen requests weglekken 8.2.35 / 8.3.36 / 8.4.27 / 8.5.12
CVE-2026-109619 9.8 Verwante kwetsbaarheid. Geheugen van een request met verhoogde rechten kan in het request van een andere gebruiker terechtkomen 8.2.35 / 8.3.36 / 8.4.27 / 8.5.12

Bij misbruik kunnen sessiegegevens van andere gebruikers in een request terechtkomen, wat kan leiden tot privilege-escalatie of het uitlekken van informatie en in het ergste geval tot een webshell op de server. Is uw versie lager dan 8.2.35 / 8.3.36 / 8.4.27 / 8.5.12, werk dan zo snel mogelijk bij.

Aandeel sites dat voor de PHP-CVE's van 2026 nog een ongepatchte versie toont
Aandeel sites dat voor de PHP-CVE's van 2026 nog een ongepatchte versie toont

De upgradeprocedure

Afbeelding: De upgradeprocedure
Afbeelding: De upgradeprocedure

Stap 1: Maak een back-up voordat u overstapt

Afbeelding: Stap 1: Maak een back-up voordat u overstapt
Afbeelding: Stap 1: Maak een back-up voordat u overstapt

Een versiewissel kan het gedrag van PHP veranderen en een site onderuit halen. Maak daarom altijd eerst deze back-ups.

  • Back-up van de database: een dump van MySQL / MariaDB ("Export" in phpMyAdmin, of de back-upfunctie van uw controlepaneel)
  • Back-up van de bestanden: bij WordPress alles onder wp-content/ (thema's, plug-ins, uploads) plus wp-config.php

Stap 2: Controleer de compatibiliteit van WordPress, thema en plug-ins

Afbeelding: Stap 2: Controleer de compatibiliteit van WordPress, thema en plug-ins
Afbeelding: Stap 2: Controleer de compatibiliteit van WordPress, thema en plug-ins

Stapt u over naar een nieuwe hoofdversie (7.x → 8.x), controleer dan vooraf of de WordPress-core, uw thema en elke geïnstalleerde plug-in de beoogde PHP-versie ondersteunen.

  • Werk eerst de WordPress-core bij via Dashboard → Updates
  • Controleer per plug-in het veld "Tested up to" op de pagina op WordPress.org of in de ondersteuningsinformatie van de ontwikkelaar
  • Overweeg oude plug-ins die niet meer worden onderhouden te vervangen

Stap 3: Test op een stagingomgeving (aanbevolen)

Afbeelding: Stap 3: Test op een stagingomgeving (aanbevolen)
Afbeelding: Stap 3: Test op een stagingomgeving (aanbevolen)

Test de nieuwe PHP-versie op een stagingkopie voordat u de live site omzet. De meeste grote hostingproviders bieden een stagingfunctie of een subdomein dat u daarvoor kunt gebruiken.

Is staging niet beschikbaar, dan is het praktische alternatief om te wisselen op een rustig moment (laat in de avond) en direct de belangrijkste pagina's met eigen ogen na te lopen.

Stap 4: Wissel de PHP-versie in het controlepaneel

Afbeelding: Stap 4: Wissel de PHP-versie in het controlepaneel
Afbeelding: Stap 4: Wissel de PHP-versie in het controlepaneel

Grote Japanse shared-hostingproviders (Sakura, Xserver, Lolipop, ConoHa WING, mixhost en andere; Japanse hostingdiensten die hier als voorbeeld worden genoemd) bieden in het controlepaneel een menu om van PHP-versie te wisselen. Het gebruikelijke verloop is:

  1. Log in op het controlepaneel van uw hostingprovider
  2. Open de instellingen van het domein of de site en zoek een menu dat overeenkomt met "PHP settings", "PHP version" of "Language version"
  3. Kies 8.3 of 8.4 (de nieuwste stabiele versie die uw provider aanbiedt) en sla op / pas toe
  4. Het kan enkele minuten duren voordat de wijziging is doorgevoerd

Menunamen en stappen verschillen per aanbieder. Volg altijd de officiële handleiding van uw provider; daarin staan ook de beschikbare versies.

Stap 5: Controleer de site en het foutenlogboek

Afbeelding: Stap 5: Controleer de site en het foutenlogboek
Afbeelding: Stap 5: Controleer de site en het foutenlogboek

Controleer na de wissel het volgende.

  • De homepage en de belangrijkste pagina's worden correct weergegeven in een browser
  • U kunt inloggen op het beheergedeelte van WordPress
  • Bekijk het PHP-foutenlogboek via de logfunctie van het controlepaneel of het pad dat in error_log is ingesteld. Ziet u PHP Fatal error of PHP Deprecated, dan vraagt de betreffende plug-in of het betreffende thema om aandacht
  • Gaat er iets mis, schakel dan meteen terug naar de vorige versie (de meeste panelen maken direct terugzetten mogelijk), zoek de oorzaak en probeer het daarna opnieuw

Verberg de versiestring (na het bijwerken)

Afbeelding: Verberg de versiestring (na het bijwerken)
Afbeelding: Verberg de versiestring (na het bijwerken)

PHP en webservers kunnen zo worden ingesteld dat ze hun versienummer niet bekendmaken. Dat heet "versie verbergen" — maar het verbergen van de versie neemt de kwetsbaarheid niet weg. Rond eerst de upgrade af en pas dit daarna toe als aanvullende maatregel.

Doet u het in de verkeerde volgorde, dan houdt u "een oude versie met een verborgen nummer" over: lastiger te herkennen, maar met precies hetzelfde risico.

Verwijder de PHP-versieheader (expose_php)

Afbeelding: Verwijder de PHP-versieheader (expose_php)
Afbeelding: Verwijder de PHP-versieheader (expose_php)

Voeg het volgende toe aan php.ini of .htaccess:

; add to php.ini
expose_php = Off

Kunt u php.ini bij uw provider niet rechtstreeks bewerken, zet dezelfde instelling dan in .user.ini (wordt door de meeste shared-hostingproviders ondersteund). Controleer na het herladen (of nadat de wijziging is doorgevoerd) met Site Scouter /server/ dat de PHP-versie uit de header X-Powered-By is verdwenen.

Beperk de Server-header van Apache tot het minimum

Afbeelding: Beperk de Server-header van Apache tot het minimum
Afbeelding: Beperk de Server-header van Apache tot het minimum

Hebt u Apache zelf in beheer (VPS of dedicated server), stel dan het volgende in httpd.conf of apache2.conf in:

ServerTokens Prod
ServerSignature Off

ServerTokens Prod geeft alleen Server: Apache terug, zonder versie. ServerSignature Off haalt de serverregel van foutpagina's weg.

Beperk de Server-header van nginx tot het minimum

Afbeelding: Beperk de Server-header van nginx tot het minimum
Afbeelding: Beperk de Server-header van nginx tot het minimum

Voeg bij nginx dit toe aan het http-blok van nginx.conf:

server_tokens off;

nginx geeft dan alleen Server: nginx terug, zonder versie.

Eindcontrole na de wijzigingen

Afbeelding: Eindcontrole na de wijzigingen
Afbeelding: Eindcontrole na de wijzigingen

Zijn de upgrade en de instellingen voor het verbergen van de versie klaar, zoek uw site dan op in de serverinformatiecheck van Site Scouter (/server/). Tonen de headers X-Powered-By en Server geen versienummers meer, dan is de versie van buitenaf niet meer zichtbaar.

Checklist

Afbeelding: Checklist
Afbeelding: Checklist
  • [ ] Huidige PHP-versie gecontroleerd via het controlepaneel, Site Health of /server/
  • [ ] Vastgesteld dat 8.1 en ouder EOL zijn, indien van toepassing
  • [ ] De deadline van 2026-12-31 genoteerd, als u 8.2 draait
  • [ ] Back-ups gemaakt (database + bestanden)
  • [ ] Compatibiliteit van WordPress, thema en plug-ins gecontroleerd
  • [ ] PHP omgezet naar 8.3 of hoger (bij voorkeur 8.4 of 8.5; de nieuwste stabiele versie die uw provider aanbiedt)
  • [ ] Bevestigd dat de versie gelijk is aan of hoger is dan de gepatchte releases voor CVE-2026-109618 / CVE-2026-109619 (8.2.35 / 8.3.36 / 8.4.27 / 8.5.12)
  • [ ] Na de wissel bevestigd dat de site werkt en het foutenlogboek schoon is
  • [ ] expose_php = Off / ServerTokens Prod / server_tokens off ingesteld (na het bijwerken)
  • [ ] Met /server/ bevestigd dat er van buitenaf geen versie-informatie zichtbaar is

Gerelateerde artikelen

Afbeelding: Gerelateerde artikelen
Afbeelding: Gerelateerde artikelen

De ondersteuningsdata zijn gebaseerd op php.net/supported-versions.php. Controleer vóór publicatie opnieuw de meest recente data.

Controleer met SiteScouter

Controleer voor en na de overstap welke PHP- en serverversies en welke beveiligingsheaders uw site aan de buitenwereld toont. Voer gewoon een URL in: de controle is niet-intrusief en registratie is niet nodig.

Gebruik: Serverinformatie opzoeken

Bronnen

Laatst gecontroleerd: 2026-10-28. Specificaties en beleid kunnen veranderen; raadpleeg de primaire bronnen voordat u actie onderneemt.

Over de auteur en contact

Yuki Nakazawa (persoonlijke blog nkzw.jp)

Contact: Officiële website / YouTube / Instagram / LinkedIn / X / Telegram

Dit artikel bevat algemene informatie en is geen juridisch of professioneel advies. De cijfers zijn gebaseerd op versie-aanduidingen die servers vrijgeven en zijn bovengrenzen; ze bewijzen niet dat enige site te misbruiken is.