こんなことは今までに一度もなかった。通常はエラーが表示されますが、現在は 500 Internal Server Error が表示されるだけです。もちろん、以前にエラーが表示されたときは、別のサーバーでした。現在、私は新しいサーバー上にいます (私は完全な root を持っているので、php.ini のどこかで設定する必要がある場合は設定できます。) それとも、Apache の問題でしょうか?
私はそれを我慢して、ファイルを他のサーバーに転送し、そこで実行してエラーを見つけるだけですが、あまりにも面倒になってきました。この問題を解決する方法はありますか?
コマンドラインから
php -l
(つまり「L」) を使用すると、構文エラーが出力され、PHP がステータス 500 エラーをスローする可能性があります。次のように出力されます:PHP 解析エラー: 構文エラー、18 行目に予期しない "}"
php.ini
ファイルの
error_reporting、
display_errors、および
display_startup_errorsの設定を確認します。これらはそれぞれ
E_ALLと
"On"に設定する必要があります (ただし、運用サーバーでは
display_errorsを使用しないでください。そのため、このオプションを無効にして
を使用してください) log_errors 代わりに、デプロイする場合/デプロイするとき)。スクリプトの先頭でこれらの設定 (display_startup_errorsを除く) を変更して、実行時に設定されるようにすることもできます (ただし、この方法ですべてのエラーを検出できるわけではありません)。 リーリー
その後、サーバーを再起動します。