web-dev-qa-db-fra.com

"Le site Web a rencontré une erreur inattendue. Veuillez réessayer plus tard."

J'obtiens cette erreur avec Drupal 7.

Le site Web a rencontré une erreur inattendue. Veuillez réessayer plus tard.

Comment obtenir plus d'informations sur cette erreur? Y a-t-il un rapport ou un journal pour comprendre ce qui s'est passé? Le journal PHP ne signale pas les erreurs.
Comment puis-je désactiver ce message et en avoir un plus utile à des fins de débogage?

30
theredled

Cette erreur provient d'une erreur exception PHP . Drupal intercepte les exceptions, donc aucun laid PHP message d'erreur s'affiche à l'utilisateur. Vous pouvez trouver les informations d'exception dans le lien "Messages de journal récents" sur Rapports (ou essayez ce chemin:/admin/reports/dblog) .Assurez-vous que le module 'Database logging' est activé car ce module fournit ce rapport.

Vous verrez tous les messages internes qui ont été générés. Filtrer par type "PHP" et gravité "erreur" et vous trouverez probablement un message sur une exception non interceptée. Cela cause votre problème. Vous disposez maintenant de plus d'informations pour pouvoir y remédier.

28
sanzante

Drupal 6 & 7

Si vous utilisez Drush, faites simplement drush vset error_level 1.

Sinon, accédez à "/admin/config/development/logging "et remplacez le paramètre par" Erreurs et avertissements "

Drupal 8

Au lieu de drushvset/vget/vdel, vous pouvez utiliser cset/cget/cdel pour les valeurs de configuration et sset/sget/sdel pour les valeurs d'état.

15
coak

FACILE POUR Drupal 8,

si vous ne pouvez plus vous connecter pour accéder aux messages de journal récents, comme décrit dans la réponse acceptée.

Ouvrez le fichier /sites/default/settings.php avec un éditeur ou un client ftp et ajoutez cette ligne:

$config['system.logging']['error_level'] = 'verbose';

Après avoir rechargé la page, vous verrez un message d'erreur complet, au lieu du générique "Le site Web a rencontré une erreur inattendue. Veuillez réessayer plus tard."

12
4k4

MOYEN FACILE

Modifiez votre settings.php et ajoutez une ligne là-bas (surtout sur votre site de développement, vous pouvez simplement le garder)

$conf['error_level'] = 1;

drush nécessite que vous puissiez bootstrap la base de données.

12
Frank Carey

Cette erreur vient de _drupal_log_error() .

En tant que solution rapide pour le développement, vous pouvez mettre à jour cette fonction pour fournir des messages d'erreur plus détaillés, mais assurez-vous absolument de la modifier avant la mise en ligne du site :)

2
Clive

Archivez la table watchdog dans MySQL. Vous pouvez télécharger le Blob (la colonne variables) et l'ouvrir avec le Bloc-notes. Il vous montrera un objet sérialisé avec votre erreur.

0
Maxime Fafard

Pour rendre les erreurs visibles sur votre site Web Drupal, recherchez le fichier index.php dans le répertoire principal de votre site. Ouvrez index.php et ajoutez ce code directement avant la toute première ligne du fichier:

error_reporting(E_ALL); 
ini_set('display_errors', TRUE); 
ini_set('display_startup_errors', TRUE); 

Vous pouvez également essayer de résoudre Drupal Problèmes avec les journaux d'erreurs comme décrit ici ..

0
Chetabahana

Essaye ça:

niveau d'erreur

admin menu equivalent: admin/config/development/logging
drush command: drush vset -y error_level <value>
values:
    0: none
    1: errors and warnings
    2: all 
0
ravyg

C'est très intéressant mais si vous ouvrez la page source (CTRL-U) alors tous les avertissements et messages d'erreur sont là, ils sont juste dans un élément caché. Rechercher element-invisible.

Éditer: $conf['error_level'] = 1; doit être placé dans settings.php fichier également.

0
endo64

Ceci est un vieux fil mais comme j'ai rencontré ce même problème récemment en fournissant mes entrées. Je n'ai pu accéder à aucun des chemins Drupal car je recevais toujours cette erreur, quoi qu'il arrive. Cela a commencé à se produire après avoir effectué une mise à jour d'une vue, donc je savais ce qui devait être fait mais je n'ai pas pu ouvrir la vue. J'ai donc regardé dans les journaux du serveur Apache. En dehors de la solution donnée ci-dessus, comme regarder drush et dblogs, il peut être utile de consulter les journaux du serveur Apache, surtout lorsque vous ne pouvez accéder à aucun Ceux-ci sont généralement présents sous le fichier\logs\error.log et auront les détails sur l'exception non gérée et l'endroit où elle est générée, etc. En guise de solution rapide, vous pouvez commenter le code qui lève l'exception et faire mises à jour de l'application. Dans mon cas, j'ai commenté le code que j'ai pu accéder à la vue et effectuer les mises à jour nécessaires. J'espère que cela aidera quelqu'un dans des situations similaires

0
MAJ

Consultez le blog. C'est le meilleur endroit pour trouver des erreurs dans un site Web Drupal. Consultez également la console JS pour détecter des erreurs supplémentaires dans votre navigateur.

0
Binny