web-dev-qa-db-ja.com

「ウェブサイトで予期しないエラーが発生しました。しばらくしてからもう一度お試しください。」

Drupal 7。

Webサイトで予期しないエラーが発生しました。後でもう一度やり直してください。

このエラーに関する詳細情報を入手するにはどうすればよいですか?何が起こったかを理解するためのレポートやログはありますか? PHPログはエラーを報告しません。
どのようにしてそのメッセージを無効にし、デバッグ目的でより有用なメッセージを持つことができますか?

30
theredled

このエラーは、キャッチされていない PHP例外 が原因です。 Drupal例外をキャッチするため、醜いPHPエラーメッセージがユーザーに表示されません。例外情報は、レポートの[最近のログメッセージ]リンク(またはこのパスを試してください:/ admin/reports/dblog)。このモジュールはこのレポートを提供するため、「データベースログ」モジュールが有効になっていることを確認してください。

生成されたすべての内部メッセージが表示されます。タイプ「PHP」と重大度「エラー」でフィルタリングすると、キャッチされなかった例外に関するメッセージが見つかるはずです。これが問題の原因です。これで、より多くの情報が得られるので、修正できる可能性があります。

28
sanzante

Drupal 6および7

Drushを使用している場合は、drush vset error_level 1

それ以外の場合は、「/admin/config/development/logging "に設定し、設定を「エラーと警告」に変更します

Drupal 8

drushvset/vget/vdelの代わりに、cset/cget/cdelは構成値、sset/sget/sdelは状態値です。

15
coak

Drupal 8)の簡単な方法

受け入れられた回答で説明されているように、最近のログメッセージにアクセスするためにこれ以上ログインできない場合。

ファイルを開く/sites/default/settings.phpエディタまたはFTPクライアントを使用して、次の行を追加します。

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

ページをリロードすると、一般的な「Webサイトで予期しないエラーが発生しました」ではなく、完全なエラーメッセージが表示されます。後でもう一度やり直してください。」

12
4k4

簡単な方法

Settings.phpを編集して、そこに行を追加します(特に、開発サイトでは、これをそのままにしておくことができます)。

$conf['error_level'] = 1;

drushでは、bootstrapデータベースを実行できる必要があります。

12
Frank Carey

そのエラーは _drupal_log_error() から発生します。

開発のクイックフィックスとして、その関数を更新してより詳細なエラーメッセージを表示することができますが、サイトが稼働する前に必ず変更してください:)

2
Clive

MySQLのwatchdogテーブルをチェックインします。 Blob(variables列)をダウンロードして、メモ帳で開くことができます。エラーのあるシリアル化されたオブジェクトが表示されます。

0
Maxime Fafard

Drupal Webサイトでエラーを表示するには、サイトのメインディレクトリでindex.phpファイルを見つけます。index.phpを開き、このコードをファイルの最初の行の直前に追加します。

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

Drupal説明されているエラーログの問題 here .. を解決することもできます。

0
Chetabahana

これを試して:

エラーレベル

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

それは非常に興味深いですが、ページのソース(CTRL-U)を開くと、すべての警告とエラーメッセージがそこにありますが、それらは非表示の要素にあります。 element-invisibleを検索します。

編集:$conf['error_level'] = 1;settings.phpファイルに配置する必要があります。

0
endo64

これは古いスレッドですが、同じ問題が発生したため、最近、入力を提供しています。 Drupalパスにはアクセスできませんでした。何があろうと常にこのエラーが発生していたためです。これは、ビューを更新した後に発生し始めたので、何が必要かを知っていました。完了しましたが、ビューを開くことができませんでした。そのため、Apacheサーバーのログを調べました。drushやdblogを調べるなどの上記の解決策とは別に、Apacheサーバーのログを調べることは、特にアクセスできない場合に役立ちます。これらは通常、\ logs\error.logファイルの下にあり、未処理の例外とその生成場所などの詳細が含まれます。簡単な修正として、例外をスローしているコードにコメントして、アプリケーションの更新。私の場合、ビューにアクセスして必要な更新を行うことができたコードポストにコメントしました。同じような状況の誰かに役立つことを願っています

0
MAJ

Dblogを確認してください。 Drupal Webiteでエラーを見つけるのに最適な場所です。また、JSコンソールをチェックして、ブラウザーで追加のエラーを見つけてください。

0
Binny