webdevqa.jp.net

PHPエラーを表示しない-内部サーバーエラー(500)

* Apache2/MySQL/PHP5を使用して、Amazon AWSにUbuntu Server 12.04 LTSの新規インストールをセットアップしました。 PHPスクリプトを実行したときにエラーが発生した場合、PHPからのエラー報告は表示されず、表示されるのは

_HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfil the request.
_

_/etc/php5/Apache2/php.ini_ファイルをチェックしましたが、エラー報告を設定する必要があると判断できる限りです。ファイルの内容(エラーに関する)は次のとおりです。

_;    display_errors
;      Default Value: On
;      Development Value: On
;      Production Value: Off

;    display_startup_errors
;      Default Value: Off
;      Development Value: On
;      Production Value: Off

;    error_reporting
;      Default Value: E_ALL & ~E_NOTICE
;      Development Value: E_ALL | E_STRICT
;      Production Value: E_ALL & ~E_DEPRECATED
_

誰でもアドバイスできますか? _$obj = new ObjectDoesntExist;_のようなものを試しても、_Fatal error: Class 'ObjectDoesntExist'_がわかりません。サーバー500エラーが発生します。

何かアドバイスはありますか?

*インストールしたモジュールは_mysql-server mysql-client Apache2 php5 libapache2-mod-php5 phpmyadmin_です。それ以外は、Ubuntu Server 12.04 LTSの完全なベースインストールです

編集:スクリプトの開始時にini_set('display_errors', '1');を使用すると、通常どおりエラーが表示されますが、このサイト全体で有効にするにはどうすればよいですか?

18
iainjames88

貼り付けたphp.iniスニペットには、各行にセミコロン(;文字)があります。セミコロンはphp.iniのコメントの始まりであるため、セミコロンに続く行のすべては使用されません。 display_errorsを手動でonに設定し、error_reportingをE_ALLに設定するか、適切なセミコロンを削除して修正してください。

さらに、Apacheのエラーログを確認してください。phpがエラーをログに記録している可能性があります。

14
Wouter

sudo gedit /etc/php5/Apache2/php.iniを使用してProduction Valueでphp.iniファイルを編集してください。または、ini_set( 'display_errors'、 '1')を使用することもできます。 phpファイルの先頭

2
user2779489

同じ問題が発生しましたが、同じエラーが発生した場合、php.iniとは無関係です。サーバーでスニッピングを開始する前に、まずコードを確認してください。間違いは欠落している可能性があります})または;またはそのようなもの。これは、最初に何をすべきかを参照するだけです。

0
mandza