Aller au contenu

Paramètres des cookies

Choisissez, par catégorie, les cookies que vous autorisez. Vous pouvez modifier votre choix à tout moment via Paramètres des cookies, en bas de chaque page. Politique de confidentialité

Nécessaires

Toujours activés

Indispensables pour vous connecter, conserver votre panier et mémoriser vos choix. Ils sont toujours activés.

Quels cookies ?
  • weboke_sessie, weboke_klant, weboke_remember: votre session et le maintien de la connexion
  • weboke_basket: votre panier
  • wkBtwIncl: l'affichage des prix TTC ou HT
  • wok_cookies: votre choix concernant les cookies, 12 mois

Mesure quelle publicité mène à une visite ou à une commande, pour que nous ne payions pas des publicités inefficaces.

Quels cookies ?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), jusqu'à 90 jours
  • OpenAI Ads, publicités dans ChatGPT
  • wok_aff: le partenaire qui vous a orienté vers nous (programme d'affiliation), 60 jours

4,6

Pays et langue

Chaque pays a son propre site, avec les prix et la TVA de ce pays.

Afficher

Module 8 · 8.4

Versions de PHP et mises à niveau

Module 8: Sauvegardes, site de préproduction (staging) et mises à jour PHP · Temps de lecture : 10 minutes

Objectif pédagogique : après cette leçon, vous saurez préparer, exécuter et, si nécessaire, annuler une mise à niveau de PHP en toute sécurité.

Notions clés : cycle de vie de PHP (support actif, sécurité uniquement, fin de vie), compatibilité de WordPress, du thème et des extensions, obsolète (deprecated), avertissement, erreur fatale, Santé du site, journal des erreurs, site de préproduction (staging), restauration, faire réaliser la mise à niveau

Pourquoi les versions de PHP sont importantes

WordPress, votre thème et vos extensions sont écrits en PHP (leçon 1.2). Chaque année, une nouvelle version de PHP sort (8.3, 8.4, 8.5, ...). Chaque version est maintenue pendant une durée fixe :

  • support actif : deux ans de corrections de bugs et de sécurité ;
  • sécurité uniquement : ensuite, encore deux ans de corrections de sécurité uniquement ;
  • fin de vie (end of life) : plus aucune correction, même pas pour les failles.

La situation au 8 novembre 2026, selon php.net :

VersionMises à jour de sécurité jusqu'auÉtat
8.1 et antérieures(dépassé)Plus de mises à jour
8.231 décembre 2026Sécurité uniquement, fin proche
8.331 décembre 2027Sécurité uniquement
8.431 décembre 2028Actif
8.531 décembre 2029Actif

Un site utilisant une version sans mises à jour fonctionne avec un logiciel comportant des failles connues qui ne seront plus corrigées. De plus, les versions plus récentes sont nettement plus rapides (leçon 6.3). Et wordpress.org recommande PHP 8.3 ou supérieur (situation en novembre 2026). L'idée est donc de rester à jour chaque année, pas de faire un grand saut une fois tous les cinq ans.

Pourquoi une mise à niveau peut casser quelque chose

Chaque nouvelle version de PHP change certaines choses. Des fonctions marquées comme obsolètes (deprecated) depuis des années sont supprimées, et les règles deviennent plus strictes. Quelques exemples connus :

  • PHP 8.0 a supprimé notamment create_function() et each(), et de nombreux avertissements sont devenus des erreurs ;
  • PHP 8.2 a marqué comme obsolète la création dynamique de propriétés sur des objets, une pratique fréquente dans les anciennes extensions.

Il existe trois types de messages, et la différence est importante :

MessageSignificationConséquence
Deprecated (obsolète)« Cela fonctionne encore, mais disparaîtra dans une version suivante »Rien de visible ; un avertissement pour l'avenir
Warning ou NoticeQuelque chose ne va pas tout à faitGénéralement rien de visible, parfois un élément qui se comporte bizarrement
Fatal errorPHP s'arrêtePage blanche ou « erreur critique » (leçon 5.4)

WordPress lui-même suit généralement bien les nouvelles versions de PHP. Le risque se situe du côté des anciennes extensions et anciens thèmes, surtout s'ils n'ont pas été mis à jour depuis longtemps ou s'ils sont développés sur mesure.

Trouver votre version actuelle

  • Dans WordPress : Outils > Santé du site, onglet Informations, sous Serveur : la version de PHP. Santé du site vous avertit également si votre version est obsolète.
  • Dans votre panneau d'hébergement : sous DirectAdmin avec CloudLinux dans Select PHP version (avec « (current) » après la version actuelle).
  • Parfois, le serveur le révèle dans l'en-tête X-Powered-By: PHP/8.3.x. Ce n'est pas recommandé (leçon 7.4), mais s'il est présent, c'est vite repéré.

Attention : chez de nombreux hébergeurs, la version de PHP s'applique à tout votre pack, donc à tous les sites qu'il contient. Un ancien site dans le même pack peut vous bloquer. C'est une raison supplémentaire de nettoyer les anciens sites ou de leur attribuer un pack propre.

La mise à niveau, étape par étape

  1. Mettre à jour d'abord. Mettez à jour WordPress, votre thème et toutes vos extensions sur la version de PHP actuelle. Une grande partie des problèmes est ainsi déjà résolue, car les développeurs adaptent leur code aux nouvelles versions de PHP.
  2. Regardez ce que disent vos extensions. Sur la page de l'extension sur wordpress.org figure la version de PHP requise ; dans le journal des modifications, on trouve souvent « compatible with PHP 8.x ». Une extension qui n'a pas été mise à jour depuis des années (leçon 5.3) est une candidate au remplacement.
  3. Faire une sauvegarde (leçon 8.1).
  4. Tester sur un site de préproduction (staging) (leçon 8.3). Si votre hébergeur peut attribuer une version de PHP différente par site, placez le site de préproduction sur la nouvelle version. Si ce n'est pas possible (une seule version par pack), testez sur un site de préproduction dans un autre pack, en local, ou choisissez un moment calme en production avec l'ancienne version prête à être restaurée.
  5. Basculer : choisissez la nouvelle version dans votre panneau. Sous DirectAdmin avec CloudLinux, vous la choisissez dans Select PHP version et cliquez sur Apply ; sans Apply, rien ne change.
  6. Vérifier immédiatement : ouvrez votre site et parcourez quelques pages, y compris l'administration, un formulaire et (pour une boutique) le paiement. Consultez le journal des erreurs (leçon 5.4) pour repérer de nouvelles lignes PHP Fatal error.
  7. Extensions et paramètres : chez certains hébergeurs, les extensions PHP et les options (comme memory_limit) sont liées à une version. Vérifiez après le basculement qu'elles sont correctement configurées pour la nouvelle version.

En cas de problème

  • Erreur fatale : restaurez l'ancienne version (c'est possible immédiatement chez la plupart des hébergeurs), pour que votre site refonctionne. Cherchez dans le journal des erreurs quelle extension ou quel thème est en cause (le chemin figure dans le message d'erreur), mettez-le à jour, remplacez-le ou demandez une solution à son auteur. Réessayez ensuite.
  • Uniquement des messages deprecated : aucune raison de revenir en arrière. Mais c'est un avertissement : à la version suivante, cela pourrait devenir une erreur. Notez quelle extension est concernée.
  • Du code sur mesure qui ne fonctionne plus : un ancien site réalisé par un créateur de site peut contenir du code que plus personne ne maintient. Ce code doit alors être adapté par quelqu'un qui connaît PHP. Certains hébergeurs, dont WebOké, proposent de s'en charger pour vous.

Ne laissez pas un site « pour toujours » sur une ancienne version parce qu'une seule extension n'est pas compatible. C'est repousser un problème qui s'aggrave chaque année.

Plus de certitude en amont

Pour qui veut aller plus loin : avec PHP_CodeSniffer et les règles de PHPCompatibilityWP, vous pouvez faire analyser le code de vos extensions et thèmes pour détecter ce qui ne fonctionne pas avec une version plus récente de PHP, sans exécuter le site. Cela détecte beaucoup de choses, mais pas tout. Tester sur un site de préproduction (staging) reste nécessaire.

En pratique : à quoi cela ressemble dans un panneau

Nous utilisons DirectAdmin avec CloudLinux comme exemple. Dans cPanel, on l'appelle souvent MultiPHP Manager ou Select PHP Version, dans Plesk PHP Settings.

  1. Ouvrez Select PHP version (sous Extra Programmes).
  2. Cliquez sur la version dans PHP version, choisissez la nouvelle version et cliquez sur Apply.
  3. Vérifiez les onglets Extensions et Options pour la nouvelle version.
  4. Vérifiez votre site et le journal des erreurs. Si quelque chose ne fonctionne pas, choisissez l'ancienne version et cliquez sur Apply.

Résumé

  • Chaque version de PHP bénéficie de deux ans de support actif et de deux ans de sécurité uniquement ; ensuite, plus aucune correction. Au 8 novembre 2026, la version 8.1 ne reçoit plus rien et la version 8.2 est maintenue jusqu'à fin 2026.
  • Une mise à niveau casse surtout les anciennes extensions et thèmes ; deprecated est un avertissement, une erreur fatale arrête le site.
  • Ordre à suivre : tout mettre à jour, vérifier les extensions, sauvegarde, test sur un site de préproduction, basculement, vérification immédiate.
  • En cas de problème, restaurez l'ancienne version, identifiez le coupable dans le journal des erreurs et résolvez-le ; ne restez pas bloqué sur une ancienne version.
  • Chez de nombreux hébergeurs, la version s'applique à tout le pack ; nettoyez les anciens sites.

Quiz

1. Que signifie le fait qu'une version de PHP passe en « sécurité uniquement » ?



2. Après une mise à niveau de PHP, le journal des erreurs ne contient que des messages « Deprecated ». Que faites-vous ?



3. Quel est le bon ordre pour une mise à niveau de PHP ?



4. Vous avez deux sites dans un seul pack. Le nouveau peut fonctionner avec PHP 8.4, l'ancien s'arrête au-delà de PHP 7.4. Quel est le problème et la solution ?



Exercice

Exercice A8.4 : Votre version de PHP est-elle encore prise en charge ? Consultez Outils > Santé du site (onglet Informations, Serveur) pour connaître la version de PHP utilisée par votre site, et renseignez-la, ainsi que votre domaine. Le programme compare la version avec la liste des versions prises en charge sur php.net : vert pour le support actif, orange pour la sécurité uniquement, rouge si plus aucune mise à jour n'est fournie. Si votre serveur affiche la version dans l'en-tête X-Powered-By, le programme vérifie aussi qu'elle correspond à ce que vous avez indiqué (et vous signale qu'il vaut mieux masquer cet en-tête, leçon 7.4).

Exercice A8.4: Votre version de PHP est-elle encore prise en charge ?



Nous ne conservons pas ce que vous saisissez ni ce que nous trouvons. Votre navigateur mémorise vos réponses et si l'exercice est réussi. Si vous êtes connecté, nous enregistrons uniquement dans Mes formations que l'exercice était (presque) correct ; vous pouvez aussi le supprimer à cet endroit.

Exercice D8.4 : Un plan de mise à niveau. Rédigez un plan pour la mise à niveau de votre site vers la version de PHP la plus récente proposée par votre hébergeur. Renseignez : la version actuelle et la version cible, les extensions et thèmes que vous utilisez et s'ils prennent en charge la version cible (avec l'endroit où vous l'avez lu), où vous testez (site de préproduction, autre pack, en local), comment revenir en arrière, et quand vous le faites. Exécutez-le si vous le pouvez, et notez ce qui est apparu dans le journal des erreurs.

Exercice D8.4: Un plan de mise à niveau

Cet exercice, vous le faites vous-même ; personne ne le vérifie. Cochez ce que vous avez fait et marquez l'exercice comme terminé.



Vos cases cochées et vos notes restent uniquement dans ce navigateur ; nous ne les envoyons nulle part. Si vous êtes connecté, nous enregistrons dans Mes formations uniquement le fait que vous avez terminé l'exercice.

Pour aller plus loin

Ces articles décrivent les étapes dans les panneaux de WebOké ; dans d'autres panneaux, le fonctionnement est comparable.

Un instant…

Configurez vos domaines

Pour chaque domaine, réglez les serveurs de noms, l'association à votre hébergement et le futur titulaire.

Chargement de vos domaines…