L’erreur HTTP 422 n’est pas aussi courante que d’autres codes tels que 404 ou 500. Cette erreur particulière peut être difficile à diagnostiquer car elle ne vous fournit pas beaucoup d’informations sur la partie de votre requête qui cause le problème.
En gros, si vous voyez une erreur HTTP 422, cela signifie que le serveur comprend votre requête, mais qu’il ne peut pas l’exécuter en raison d’un problème de votre côté. Si vous résolvez ce problème, vous devriez pouvoir recharger la page et l’erreur disparaîtra.
Dans cet article, nous allons parler des causes de l’erreur 422 et de la façon de la résoudre si vous utilisez WordPress. Allons-y !
Qu’est-ce que l’erreur HTTP 422 ?
L’erreur 422 est un code HTTP qui vous indique que le serveur ne peut pas traiter votre requête, bien qu’il la comprenne. Le nom complet du code d’erreur est 422 « unprocessable entity »
En bref, cette erreur signifie que vous faites une requête que le serveur comprend, mais qu’il ne peut pas la traiter. En général, cela se produit parce qu’il y a une erreur sémantique quelque part dans la requête, généralement dans un fichier PHP ou JavaScript.
Contrairement aux autres erreurs HTTP, le code 422 continuera à réapparaître jusqu’à ce que vous parveniez à résoudre le problème de votre requête. Toutefois, cela peut s’avérer difficile car l’erreur ne fournit pas d’informations spécifiques sur la partie de la requête qu’elle ne peut pas traiter.
Quelles sont les causes de l’erreur HTTP 422 ?
En général, le code HTTP 422 s’affiche lorsqu’il y a une erreur sémantique dans le contenu d’une requête. Si vous utilisez WordPress, cela signifie généralement l’une des deux choses suivantes :
- L’un des fichiers concernés par la requête contient du code comportant des erreurs sémantiques. Pour le dire autrement, il y a une erreur quelque part dans le code.
- Vous avez affaire à une table de base de données corrompue.
Un problème avec l’erreur 422 est qu’il n’y a aucun moyen de savoir quelle est sa cause au premier coup d’œil. Cela signifie que vous devrez peut-être essayer plus d’une méthode de dépannage jusqu’à ce que vous arriviez à trouver le problème.
Comment corriger l’erreur 422 dans WordPress (2 méthodes)
Dans cette section, nous vous montrerons comment réparer une base de données WordPress corrompue et comment identifier les fichiers présentant des erreurs de code sémantique. Ces étapes vous aideront également à déboguer d’autres problèmes, tels que l’erreur HTTP 400.
1. Réparer une base de données WordPress corrompue
Dans certains cas, les tables de la base de données WordPress peuvent être corrompues lors d’une mise à jour. Cela signifie que si vous mettez à jour une extension, un thème ou WordPress lui-même et que le processus est interrompu, les entrées de la base de données peuvent commencer à présenter des erreurs.
Une base de données corrompue peut entraîner toutes sortes d’erreurs au sein de WordPress, comme des pages qui ne se chargent pas, des fonctionnalités qui ne fonctionnent pas correctement et des codes HTTP tels que 422. Il existe deux façons de réparer une base de données WordPress corrompue. L’approche la plus simple consiste à utiliser une extension telle que WP-DBManager:
Une fois que vous aurez activé WP-DBManager, vous aurez accès à un nouvel onglet Base de données dans le tableau de bord. Allez dans Base de données > Reparer BDD et sélectionnez les tables que vous voulez réparer. Comme vous ne savez peut-être pas quelle table est corrompue, sélectionnez-les toutes et cliquez sur Réparer :
Le processus ne devrait prendre que quelques secondes et vous verrez un message de réussite lorsqu’il sera prêt. Maintenant, essayez d’accéder à la page qui a renvoyé l’erreur 422 pour voir si elle persiste.
Si vous n’avez pas accès à l’administration de WordPress à cause de l’erreur 422, vous pouvez réparer la base de données manuellement. Pour ce faire, vous devrez accéder à la base de données à partir du panneau de contrôle de votre hébergement.
Si vous utilisez Kinsta, vous pouvez accéder à la base de données depuis votre tableau de bord MyKinsta. Sélectionnez un site web et allez dans l’onglet Info. Recherchez la section Accès à la base de données, où vous trouverez les identifiants de connexion à la base de données. Cliquez sur Ouvrir phpMyAdmin et saisissez ces informations d’identification :
Sélectionnez la base de données que vous voulez réparer dans le menu à gauche et vous verrez une répartition de toutes les tables qu’elle contient à droite. Utilisez l’option Tout cocher en bas de la page pour sélectionner chaque table. Ensuite, recherchez l’option Réparer la table dans le menu de droite :
Cliquez sur le bouton Go et attendez que phpMyAdmin renvoie un message de réussite. Maintenant, allez-y et vérifiez si l’erreur HTTP 422 persiste.
2. Utilisez les journaux d’erreurs de WordPress pour identifier les causes du code HTTP 422
Si la réparation de la base de données ne fait pas disparaître l’erreur 422, le problème se situe dans l’un des fichiers de WordPress. Comme chaque installation WordPress contient des dizaines, voire des centaines de fichiers, il n’est pas possible de vérifier tous les fichiers pour détecter les erreurs de code sémantique.
Votre meilleure chance, dans ce scénario, est d’activer la fonction de débogage de WordPress, qui vous donnera accès aux journaux d’erreurs. Pour activer manuellement le mode de débogage de WordPress, vous devrez modifier le fichier wp-config.php dans le répertoire racine.
Vous pouvez le faire en accédant à votre site web via un client FTP (File Transfer Protocol) et en localisant le fichier wp-config.php. Ouvrez le fichier et ajoutez les deux lignes de code suivantes avant la ligne qui dit /* C’est tout, arrêtez de modifier ! Bon blogage.* /:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
Si la ligne WP_DEBUG existe déjà, assurez-vous qu’elle indique true et ajoutez simplement la deuxième ligne de code (l’entrée WP_DEBUG_LOG). Enregistrez les modifications dans le fichier et rechargez la page qui renvoie l’erreur 422.
L’erreur devrait persister, mais vous avez maintenant accès aux journaux d’erreurs. Pour lire ces journaux, accédez au dossier wp-content dans le répertoire racine et recherchez le fichier debug.log. Vous pouvez ouvrir le fichier à l’aide d’un éditeur de texte.
Si le fichier est récent, il ne devrait contenir que quelques lignes, dont l’une devrait faire référence à l’erreur à l’origine du code 422. L’erreur doit vous indiquer le fichier spécifique à l’origine du problème. Elle doit également inclure des informations sur la ligne du fichier qui contient une erreur sémantique.
Si vous utilisez Kinsta, vous n’avez pas besoin d’activer manuellement le mode de débogage de WordPress ou les journaux d’erreurs. Au lieu de cela, allez sur MyKinsta, sélectionnez un site web, et passez à l’onglet Outils. Vous y trouverez une option pour activer le débogage de WordPress :
Après avoir activé le débogage, vous pouvez aller dans l’onglet Journaux et sélectionner l’option error.log. MyKinsta affichera les dernières erreurs sur votre site web et la visionneuse comprend une fonction de recherche pour vous aider à trouver des entrées spécifiques :
En vous concentrant sur les dernières entrées, vous devriez pouvoir identifier le fichier à l’origine de l’erreur 422. Une fois que vous avez identifié le fichier, vous pouvez essayer de corriger l’erreur sémantique ou le remplacer par une version stock de WordPress.
Résumé
Identifier ce qui cause l’erreur HTTP 422 peut être quelque peu compliqué. Cependant, le dépannage de cette erreur ne prend pas beaucoup de temps. Le processus est beaucoup plus simple si vous utilisez WordPress, car le logiciel est livré avec des outils qui peuvent vous aider lorsqu’il s’agit de déboguer des erreurs.
Si vous rencontrez l’erreur HTTP 422 dans WordPress, vous pouvez la corriger de deux façons :
- Réparez une base de données WordPress corrompue.
- Utilisez les journaux d’erreurs de WordPress pour identifier les causes du code 422.
Avec Kinsta, le dépannage des erreurs est beaucoup plus facile. Notre tableau de bord MyKinsta comprend des outils intégrés pour déboguer WordPress. Si vous ne voulez pas résoudre les problèmes manuellement, vous pouvez toujours contacter notre équipe de support !