Tous les clients de Kinsta peuvent facilement choisir la version de PHP pour un site WordPress dans le tableau de bord MyKinsta. Nous recommandons d’utiliser la dernière version disponible de PHP supportée par votre installation WordPress.

Comme vous l’avez peut-être entendu, PHP a adopté un calendrier de publication prévisible. Chaque nouvelle version est activement maintenue pendant deux ans et bénéficie d’une année supplémentaire de mises à jour de sécurité critiques. Pour que vos sites WordPress soient aussi rapides et sûrs que possible, nous avons adopté le même calendrier, ce qui signifie que nous supprimerons les versions de PHP non prises en charge lorsqu’elles atteindront leur fin de vie (End Of Life ou EO).

Pourquoi mettre à jour la version PHP de votre site WordPress ?

Les deux principales raisons de mettre à jour la version de PHP de votre site sont la sécurité et la rapidité.

Tout comme vous mettez à jour WordPress pour vous assurer que vous êtes protégé contre les failles de sécurité, vous devriez faire de même avec PHP. De plus, la mise à jour de PHP entraîne généralement une augmentation significative de la vitesse, comme le montrent nos rapports de benchmarking PHP.

Pour plus de détails, consultez notre article sur les versions de PHP supportées.

Vous n’êtes pas sûr de la version de PHP que vous utilisez ? Vous pouvez vérifier dans le menu Outils du tableau de bord MyKinsta. Ou vous pouvez voir la version PHP en utilisant l’outil WordPress Santé du site :

Vérifier la version PHP dans l'outil WordPress de santé du site.
Vérifier la version PHP dans l’outil WordPress de santé du site.

Que se passe-t-il si mon site tombe en panne ?

Les problèmes causés par la mise à jour des versions de PHP surviennent lorsque le code exécuté sur votre site utilise d’anciennes fonctions qui ne sont plus prises en charge par les versions plus récentes de PHP. Le coupable est probablement une extension ou un thème actif. Notre guide ci-dessous contient des instructions pas à pas sur la manière de résoudre ce problème.

Comment mettre à jour les versions de PHP dans WordPress

Aujourd’hui, nous allons vous expliquer comment tester la compatibilité de votre site WordPress avant de mettre à jour les versions de PHP. La plupart d’entre vous ne devraient pas subir de temps d’arrêt, et il y aura peu de travail à faire.

Pour d’autres, des tests supplémentaires, du dépannage, et même l’embauche d’un développeur WordPress pour rendre les choses compatibles peuvent être nécessaires.

Si vous souhaitez simplement mettre à jour la version PHP de votre environnement WordPress immédiatement, vous pouvez passer à l’étape 5. Cependant, nous vous recommandons fortement de suivre toutes les étapes ci-dessous pour vous assurer que tout fonctionne correctement.

Surtout si vous utilisez une version plus ancienne, comme PHP 7.4.

  1. Créez un site de staging
  2. Changez la version de PHP
  3. Testez le site, les extensions, le thème
  4. Transférer le site de staging vers le site réel
  5. Mettre à jour PHP sur le site en production

Étape 1 – Créez un site de staging

La première chose à faire est de créer un site de staging. Ce site est séparé de votre environnement réel et vous permettra de tester les nouvelles versions de PHP sans endommager votre site réel.

Dans le tableau de bord MyKinsta, cliquez sur Sites WordPress dans la navigation de gauche. Vous verrez une liste de vos sites. Cliquez sur celui pour lequel vous voulez changer la version de PHP. Ensuite, cliquez sur le champ de recherche (ou appuyez sur CMD + / ou CTL + / sur le clavier) et sélectionnez l’option Créer un nouvel environnement.

Création d'un nouvel environnement dans MyKinsta.
Création d’un nouvel environnement dans MyKinsta.

A partir de là, suivez les étapes de notre documentation pour créer un environnement de staging WordPress.

N’oubliez pas de consulter les notes importantes concernant les environnements de staging. Par exemple, si vous utilisez un CDN tiers, vous devrez peut-être le désactiver pour que votre site s’affiche correctement.

En effet, votre site de staging utilise une URL différente. La mise en cache est également désactivée sur les environnements de staging standard, donc gardez cela à l’esprit si vous essayez de tester les performances.

Étape 2 – Mettre à jour la version de PHP pour WordPress

Pour mettre à jour la version PHP de votre site WordPress, naviguez vers Sites WordPress > nom de l’environnement > Outils, puis cliquez sur le bouton Changer sur la carte des réglages PHP:

Démarrer une mise à jour PHP pour un seul environnement WordPress.
Démarrer une mise à jour PHP pour un seul environnement WordPress.

Vous pouvez également effectuer une mise à jour PHP groupée pour plusieurs environnements depuis la page Sites WordPress. Dans l’exemple ci-dessous, nous avons sélectionné les cases à cocher à côté des noms de plusieurs environnements de staging et nous choisissons Changer les réglages PHP dans le menu déroulant Actions :

Lancer une mise à jour PHP pour plusieurs environnements WordPress.
Lancer une mise à jour PHP pour plusieurs environnements WordPress.

Quel que soit le chemin que vous choisissez, l’étape suivante consiste à choisir la version de PHP que vous souhaitez adopter et à cliquer sur le bouton Modifier les réglages PHP:

Sélectionner une mise à jour de la version PHP vers la version 8.4.
Sélectionner une mise à jour de la version PHP vers la version 8.4.

Note : Quand vous effectuez une mise à jour groupée de plusieurs environnements WordPress, la version de PHP choisie ci-dessus sera appliquée à tous ces environnements.

Quelle que soit la méthode choisie dans MyKinsta, le processus de mise à jour peut prendre jusqu’à trois minutes. Une fois terminé, votre moteur PHP sera redémarré, ce qui peut entraîner quelques secondes d’indisponibilité pour votre backend WordPress uniquement. Les visiteurs de votre site ne subiront aucun temps d’arrêt.

Pendant le changement de la version PHP, vous pouvez naviguer ailleurs dans MyKinsta, mais certaines actions – comme la gestion du cache – seront indisponibles jusqu’à ce que le nouveau moteur soit activé. Vous recevrez une notification dans le tableau de bord dès que le changement aura été effectué.

Étape 3 – Testez votre site, vos plugins et votre thème

Vous devriez maintenant avoir un site de staging fonctionnant avec la dernière version de PHP (ou la version vers laquelle vous souhaitez passer). La première chose à faire est de naviguer et de cliquer sur votre site WordPress pour voir si vous remarquez quelque chose de cassé.

Si quelque chose est incompatible, comme une extension ou votre thème, vous pouvez voir une erreur 500 (501, 502, 503, 504, etc.) ou un écran blanc de la mort sur l’interface publique de votre site. Dans ce cas, le moyen le plus simple et le plus rapide de déterminer la cause de l’erreur est de désactiver toutes vos extensions tierces et de les réactiver une par une. N’oubliez pas que vous êtes sur un site de staging. Vous n’avez donc pas à craindre de casser quoi que ce soit.

Dans votre tableau de bord WordPress, sous l’écran Extensions, sélectionnez toutes vos extensions. Sélectionnez ensuite Désactiver dans le menu déroulant Actions groupées et cliquez sur Appliquer.

Comment désactiver de façon groupée les extensions WordPress à partir du tableau de bord.
Comment désactiver de façon groupée les extensions WordPress à partir du tableau de bord.

Vous pouvez ensuite les réactiver une par une, en visitant votre site WordPress à chaque fois. Cela vous aidera à déterminer ce qui peut être à l’origine du problème. Vous n’avez pas accès à votre tableau de bord WordPress à cause d’une erreur ? Pas de problème, découvrez comment désactiver des extensions via FTP.

Les mêmes tests peuvent être effectués avec votre thème WordPress. Vous pouvez temporairement revenir au thème WordPress par défaut, comme le thème Twenty Nineteen.

Afficher les fichiers journaux dans MyKinsta

Vous avez peut-être déterminé quelle extension ou quel thème est à l’origine du problème, mais vous ne savez pas exactement pourquoi ? C’est là que les journaux d’erreurs de WordPress peuvent s’avérer utiles. Cliquez simplement sur l’un de vos sites WordPress, et sur le côté droit, cliquez sur Journaux d’erreurs.

Vous pouvez consulter les fichiers error.log, kinsta-cache-perf.log et access.log. Par défaut, les 1000 dernières lignes sont affichées. Vous pouvez utiliser la liste déroulante du nombre de lignes pour sélectionner une quantité plus importante (jusqu’à 20.000 lignes).

Le fichier error.log dans la visionneuse de journal de MyKinsta.
Le fichier error.log dans la visionneuse de journal de MyKinsta.

Important : L’outil MyKinsta Logs n’affiche pas les informations de débogage. Si vous avez besoin de voir les informations de débogage, vous pouvez activer WP_DEBUG comme nous vous le montrons ci-dessous.

Voir les fichiers de journaux bruts via SFTP

Vous pouvez voir les journaux non modifiés dans /logs/ via SFTP.

Dossier des journaux d'erreur de WordPress via SFTP
Dossier des journaux d’erreur de WordPress via SFTP

Suivre vos fichiers de logs via SSH

Vous pouvez suivre les journaux pendant que vous expérimentez sur votre site en utilisant SSH. Cela signifie que vous pouvez regarder la mise à jour des journaux en direct pendant que vous testez. Tous les plans d’hébergement de Kinsta incluent un accès SSH.

Afficher les 500 dernières lignes

tail -n 500 /www/sitename/logs/error.log

Regardez le fichier en direct

Observez la mise à jour de votre fichier d’erreurs à la volée.

tail -f /www/sitename/logs/error.log

Pour ceux d’entre vous qui ont un accès SSH, WP-CLI peut également être un outil inestimable.

Activez le mode débogage dans MyKinsta

Pour les utilisateurs de Kinsta, le mode débogage de WordPress peut être activé directement dans le tableau de bord de MyKinsta. Naviguez simplement vers le site WordPress et l’environnement pour lequel vous souhaitez activer le débogage. Cliquez sur Outils dans le menu de gauche, puis cliquez sur le bouton Activer de l’outil de débogage de WordPress. Cela vous permettra de voir les erreurs PHP et les notifications sans avoir à activer le mode de débogage via SSH ou SFTP.

Activer le débogage de WordPress dans MyKinsta.
Activer le débogage de WordPress dans MyKinsta.

Notre fonction d’auto-guérison PHP redémarre automatiquement PHP s’il détecte des problèmes. Si vous avez besoin de redémarrer manuellement PHP pour une raison quelconque, vous pouvez le faire en allant sur la page Outils de votre site et en cliquant sur Redémarrer PHP.

Redémarrer PHP dans MyKinsta.
Redémarrer PHP dans MyKinsta.

Activer la journalisation de débogage dans WordPress

Si vous n’avez pas d’accès SSH ou MyKinsta, vous pouvez toujours activer la journalisation de débogage dans WordPress. Tout d’abord, vous devez vous connecter à votre site via SFTP. Ensuite, téléchargez votre wp-config.php pour pouvoir le modifier.

Téléchargez le fichier wp-config.php
Téléchargez le fichier wp-config.php

Trouvez la ligne qui dit /* That's all, stop editing! Happy blogging. */, et juste avant, ajoutez ce qui suit (comme vu ci-dessous) :

define('WP_DEBUG', true ) ;
define('WP_DEBUG_LOG', true ) ;
define('WP_DEBUG_DISPLAY', false ) ;
Activez la journalisation de débogage dans WordPress
Activez la journalisation de débogage dans WordPress

Si le code ci-dessus existe déjà dans votre fichier wp-config.php mais qu’il est défini sur « false », changez-le simplement en « true » Cela activera le mode débogage et affichera tout ce qui se trouve dans votre fichier /wp-content/debug.log. Vous verrez également les avertissements et les erreurs dans votre administration WordPress s’ils existent.

Important : n’oubliez pas de désactiver le mode débogage. N’oubliez pas de désactiver le mode de débogage lorsque vous avez terminé, car ces fichiers peuvent rapidement devenir très volumineux.

Vous ne savez pas quoi chercher ?

Comme il existe des milliers d’extensions et de thèmes, il nous est malheureusement impossible d’énumérer toutes les erreurs que vous pourriez rencontrer. En général, ces erreurs sont dues à l’incompatibilité du code (fonctions, syntaxe, etc.) avec la version de PHP que vous utilisez. Cependant, voici un exemple de ce que vous pourriez voir.

500 : Erreur fatale : Uncaught Error : Un point-virgule (';') est attendu ici. in /www/sitename/public/wp-content/plugins/bbpress-shortcodes/bbpress-shortcodes.php:177

Comme vous pouvez le voir ci-dessus, il est assez facile de déterminer rapidement que c’est l’extension bbPress Shortcodes qui pose problème.

Dans le pire des cas, il se peut que vous ayez un problème de compatibilité avec une ou deux extensions. Si c’est le cas, voici ce que nous vous conseillons :

  1. Mettez à jour vos extensions et thèmes à la dernière version si ce n’est pas déjà fait.
  2. Contactez le développeur de l’extension ou du thème et demandez-lui d’ajouter ou de corriger la prise en charge de PHP 7.4 (ou de la version actuelle que vous utilisez). C’est l’une des raisons pour lesquelles nous vous donnons un coup de pouce avant les dates de retrait progressif !
  3. Trouvez une extension alternative qui offre les mêmes fonctionnalités et qui est compatible avec la version PHP.
  4. Engagez un développeur WordPress pour résoudre le problème.
  5. Changez votre moteur PHP pour une version inférieure et vérifiez si l’extension ou le thème fonctionne. Si c’est le cas, vous pouvez utiliser une version inférieure de PHP jusqu’à ce que le développeur mette à jour son code. Nous ne recommandons pas cette solution, car PHP 8.0 est plus rapide et restera supporté plus longtemps. Mais s’il y a quelque chose que vous devez absolument exécuter et que cela ne fonctionne qu’avec PHP 7.4, vous devrez peut-être avoir recours à cette solution.

Étape 4 – Transférer le staging vers la production

Une fois que vous avez fini de tester votre site avec PHP, si vous avez dû faire des changements à vos extensions ou thèmes, vous pouvez soit pousser le staging vers le live ou faire les mêmes changements au site live que ceux que vous avez fait au staging.

Certains d’entre vous peuvent constater qu’ils doivent faire des changements assez exhaustifs dans le site de staging pour que le site fonctionne avec une version plus récente de PHP. Dans ce cas, l’utilisation de la fonctionnalité « push to live » vous fera gagner beaucoup de temps.

Pour cela, assurez-vous d’avoir sélectionné votre environnement de staging. Cliquez ensuite sur le bouton Pousser l’environnement.

Screenshot showing the MyKinsta Push Environment feature in use.
Poussez l’environnement staging vers le live dans MyKinsta avec Selective Push.

N’hésitez pas à contacter notre équipe de support 24/7 si vous avez des questions ou des problèmes avec la mise à jour de la version PHP sur votre site WordPress.

Étape 5 – Mettre à jour PHP sur votre site en ligne

Maintenant que PHP est prêt à être mis à jour, vous pouvez changer la version PHP sur votre site live comme vous l’avez fait en utilisant les méthodes décrites dans l’étape 2 ci-dessus.