Webサイトで500の内部サーバーエラーが発生しています。エラーログには、次のエラーが表示されます:Joomlaアプリケーションでの「スクリプトヘッダーの早期終了:cgi_wrapper」。
これは、特定の1つのファイルがロードされた場合にのみ発生します。アプリケーション/Webサイトの残りの部分は正常に機能します。エラーログに表示される他の関連する問題はありません-タイムアウトまたはアクセス許可エラーの兆候はありません。
エラーの原因となっているファイルは、テンプレート/レイアウトファイルです。さらに、エラーの原因となるコードのスニペットを特定しました。これをコメントアウトすると、サイトは正常に読み込まれます。ここにあります:
if( $question->type == '1' || $question->type == '2' || $question->type == '3' )
{
//shuffle items
$shuffled_items = $this->shuffle_assoc($items);
$output = '';
$output .= '<table class="answer-table">';
$output .= '<tr>';
$output .= '<td>';
$output .= '<ul class="answers">';
foreach($shuffled_items as $item)
{
$output .= '<li num=' . $item->num . '>';
$output .= $item->item;
$output .= '</li>';
}
$output .= '</ul>';
$output .= '</td>';
$output .= '</tr>';
$output .= '</table>';
$output .= '<table class="answer-table correct-answer" style="display: none">';
$output .= '<tr>';
$output .= '<td>';
$output .= '<p class="question-instructions">Correct Answer:</p>';
$output .= '<ul class="answers correct-answer">';
foreach($items as $item)
{
$output .= '<li num=' . $item->num . '>';
$output .= $item->item;
$output .= '</li>';
}
$output .= '</ul>';
$output .= '</td>';
$output .= '</table>';
echo $output;
}
これは、view.html.phpファイル(Joomlaを知っている人向け)に設定されている変数$questionsを使用します。エラーを引き起こしていると思われるのはこの変数です。$ questions変数を割り当てない場合、テンプレートは問題なく読み込まれます。
また、上記の例では、最初に質問タイプ($ question-> type)をテストします。$ question-> typeが1、2、または3でない場合、トリガーされてもエラーが発生するコードの他のセクションがあります。ただし、簡潔にするために他のコードは省略しました。関連する質問タイプが存在します。上記のコードだけを実行すると、エラーが発生します。
だから、私はここで迷子になっています。私を困惑させるのは、このテンプレートファイルと$questions変数だけがエラーを引き起こすことです。他のすべては正常に動作します。ローカルサーバーでも正常に動作します。
Joomla 1.5.22、PHP 5.3.3、Apache 2.2.3、Cent OS 5.8を使用して、ほとんど忘れてしまいました。サーバーはParallelsPleskPanel10も実行します。
誰かが私に解決策を教えてくれることを願っています。
ありがとう!