現在、Codeigniterルートindex.phpのenvironment変数をに設定していますdevelopment。
また、tinyURLモードも有効にしていません。
/var/log/apache2/error.log毎晩チェックするのは好きじゃない!
PHPエラーをページに戻したい。500内部エラーは、実際にはエラーを表示するために使用できる* HARD *estメソッドです。
デフォルトの設定でUbuntu12.04LTSサーバーで作業していることに注意してください。
現在、Codeigniterルートindex.phpのenvironment変数をに設定していますdevelopment。
また、tinyURLモードも有効にしていません。
/var/log/apache2/error.log毎晩チェックするのは好きじゃない!
PHPエラーをページに戻したい。500内部エラーは、実際にはエラーを表示するために使用できる* HARD *estメソッドです。
デフォルトの設定でUbuntu12.04LTSサーバーで作業していることに注意してください。
コメントで述べたように、これがCodeIgniterの問題であるかどうかは疑わしいです。display_errorsでオフに設定した可能性が高くなりますphp.ini。
私の記憶が正しければ、CIには、とにかくデフォルトの動作を変更するindex.phpための呼び出しが含まれているini_set('error_reporting', ..);ので、いつでも最初にそこを調べて、何が起こっているかを確認できます。
ちょっと見てください、これがデフォルトです:
/*
|---------------------------------------------------------------
| PHP ERROR REPORTING LEVEL
|---------------------------------------------------------------
|
| By default CI runs with error reporting set to ALL. For security
| reasons you are encouraged to change this when your site goes live.
| For more info visit: http://www.php.net/error_reporting
|
*/
error_reporting(E_ALL);
その下に追加するだけでini_set('display_errors', 1);、問題なく動作し始めるはずです。明らかに、最善の策は、これらの変数を設定するための環境のスイッチを追加することです。なぜそれがまだそうでないのかはわかりませんが、次に例を示します。
if (defined('ENVIRONMENT'))
{
switch (ENVIRONMENT)
{
case 'development':
error_reporting(E_ALL);
ini_set('display_errors', 1);
break;
case 'production':
error_reporting(0);
ini_set('display_errors', 0);
break;
}
}
私は同じ問題を抱えていましたが、codeigniterから得たのは500の内部エラーだけでした(私の古いプロジェクトとクリーンインストールは同じことをしました)しかし、興味深い部分は、ほとんどがphpを含む私の非CIプロジェクトがまだ機能していることです。
エラーを書き出すためのヒント
ini_set('display_errors', 'On' / ,1)
何らかの理由で問題を解決しました。codeigniterコアファイルを読み取る権限がありませんでした。
ファイルに「+r」を追加すると、問題が修正されました。
RudiVisserCarlosIPe解決
策
をありがとうございます。