0

PHPで500内部サーバーエラーページを作成したいのですが、どうすればよいですか?

4

2 に答える 2

19

header("HTTP/1.1 500 Internal Server Error");出力が...出力される前に。
この関数の後に送信される出力を使用して、エラーを説明するカスタムページを表示できます。

<?php
    header('HTTP/1.1 500 Internal Server Error');
    exit("I error because foo");
?>

詳細については、関数マニュアルページを参照header()してください。

デフォルトのApacheページを表示する場合、PHPから直接ロードする方法はありませんが、次のようなハックを行うことができます。

<?php
    if ($error)
        require("badfile.php");
?>

およびbadfile.php:

<?php strpos) ?>

例えば。

試すもう1つの解決策は、誰もキャッチしない例外をスローすることです。

<?php
    if ($error)
        throw new \Exception("Error because foo");
?>

または、Apacheで使用されていた元のファイルをコピーして貼り付け、エラーが発生した後に印刷します。

<?php
    header('HTTP/1.1 500 Internal Server Error');
    header('Content-Type: text/html');
    readfile('path/to/html/file.html');
    exit(1);
?>
于 2012-10-25T13:10:51.667 に答える
5

不正な .htaccess ファイルを作成します (ジャンクを入れます)。

于 2012-10-25T13:11:44.573 に答える