我想用PHP生成500内部服务器错误页面,我该怎么做?
答案 0 :(得分:15)
header("HTTP/1.1 500 Internal Server Error");
使用此功能后发送的输出,您可以显示解释错误的自定义页面。
<?php
header('HTTP/1.1 500 Internal Server Error');
exit("I error because foo");
?>
您可以阅读manual page of header()
function了解详情。
如果你想要显示默认的Apache页面,没有直接的方法从PHP加载它,但是你可以这样做:
<?php
if ($error)
require("badfile.php");
?>
并在badfile.php中:
<?php strpos) ?>
例如。
另一个尝试的解决方案,你可以抛出一个没人会抓到的异常。
<?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);
?>
答案 1 :(得分:3)
创建一个糟糕的.htaccess文件(在其中加入一些垃圾)。