【发布时间】:2019-01-18 10:35:59
【问题描述】:
好吧,我想我要在这里失去理智了……
一直在尝试和测试,但似乎无法加载自定义 HTTP 500 错误页面。 Chrome 一直为我提供默认的“此页面无法正常工作,HTTP 错误 500”错误页面。
我采取的步骤:
- 创建了 500.php 文件,它将显示我需要的自定义页面
- 使用以下行更改了 .htaccess 文件
- 在服务器上创建了一个文件,该文件将加载一个不存在的类,从而导致 500 错误。
- Access_log 显示请求和 500 状态
访问日志
:1 - - [10/Aug/2018:20:51:39 +0200] "GET / HTTP/1.1" 500 -
错误日志
[2018 年 8 月 10 日星期五 20:51:39.156104] [php7:error] [pid 11608] [client ::1:65263] PHP 致命错误:未捕获的错误:在 /private/var/ 中找不到类“测试” www/development/public_html/index.php:7\n堆栈跟踪:\n#0 {main}\n 在第 7 行的 /private/var/www/development/public_html/index.php 中抛出
.htaccess 行
ErrorDocument 400 /404.php
ErrorDocument 403 /403.php
ErrorDocument 404 /404.php
ErrorDocument 405 /405.php
ErrorDocument 408 /408.php
ErrorDocument 500 /500.php
ErrorDocument 502 /502.php
ErrorDocument 504 /504.php
Apache 2.4+ PHP 7+
我在这里没有看到问题,特别是因为上面的 404 版本运行良好。 500.php 只包含 echo '500';
我在这里缺少一些 Apache 设置吗?是不是因为是本地的...
【问题讨论】:
-
刚刚在 SO:stackoverflow.com/questions/5765319/… 上找到了这篇文章。似乎 500 错误永远不会“到达”Apache ......所以这是否意味着我需要在我的框架中创建某种自定义错误捕获器?
标签: php apache custom-error-pages