6

PHP アプリケーションを共有ホスティング Web サーバーにインストールしました。を取得してい500 Internal Server Errorます。ログ ファイルにアクセスできないようですので、エラー ページに一時的にエラーの詳細を表示したいと思います。

4

5 に答える 5

22

試す:

error_reporting(E_ALL);
ini_set('display_errors', '1');

ファイルの上部にあります。

于 2009-11-17T20:38:15.623 に答える
4

Jeremy Morgan のソリューションがうまくいかない場合は、 を使用して独自のログ ファイルを作成してみてくださいset_error_handler()。通常、アプリケーションの状態に関する情報 ($GLOBALS など) は十分な情報ですが、PHP は、エラーが発生した場所とエラーの種類に関するあらゆる種類の情報を (少なくとも試みて) 渡します。

また、デバッグの「分割統治」方法を使用してみてください。ファイルの約半分から始めて、まだクラッシュしている場合は上に、その時点まで実行されている場合は下に展開します。コードを削除したくない場合は、コードを削除するか/* comment out */__halt_compiler()特別なディレクティブを使用して PHP にファイル内の残りのデータをすべて無視させます。

最後に、それを修正しようとして気が狂ったのは、Byte Order Markと呼ばれるものです。PHP はファイルの先頭でその BOM を評価していたため、出力が送信され、ヘッダーなどの送信中に問題が発生していました。おそらくあなたの問題ではありませんが、持つ価値のある知識です。

于 2009-11-17T20:48:47.787 に答える
2

PHPからそのエラーが発生しているとは思えません。共有ホスティングでは、アプリケーションのデフォルトの .htaccess 構成がエラーを引き起こしている可能性が高くなります。

私の推測では、RewriteBaseセットなしの mod_rewrite になります。

于 2009-11-17T20:40:54.807 に答える
1

の値phpinfo();を見て、何か突き出ているかどうかを確認してください...コードのどこかに置くと、PHPバージョン情報が表示されるはずです

于 2009-11-17T20:43:25.483 に答える
-1

「Internal Server Error」は PHP エラーではありません (名前が示すように)。したがって、サーバー ログ (アクセス権がないように見えます) を確認するか、PHP からは何もできません。

于 2009-11-17T20:40:51.407 に答える