【问题标题】:Dynamic Catch of Server Errors with PHP使用 PHP 动态捕获服务器错误
【发布时间】:2016-01-30 18:51:38
【问题描述】:

我的回答很简单: 有没有办法使用 PHP 自动捕获服务器错误(如错误 400、401、403、404、500...)并生成 custom 错误页面。

例如,假设我有一个带有页面的 PHP 文件,它只是插入错误代码和错误消息。

提前致谢!

【问题讨论】:

  • 您可以使用 set_error_handler。见php.net/manual/pl/function.set-error-handler.php
  • 是的.. 使用 htaccess 来做到这一点..
  • 您将不得不在 http 服务器级别捕获这些错误,而不是在 php.ini 中。这很有可能,您可以在其中注册“自定义错误处理程序”,例如 apache http 服务器。这样的处理程序甚至可以调用 php 脚本,没有问题。看一下http服务器的文档。这一切都有很好的记录和解释。
  • @arkascha 我看了看,对于错误消息来说真的太复杂了。但是,您是唯一了解我的问题的人。谢谢!
  • 这有什么复杂的?它是主机配置中的单个命令...

标签: php html css error-handling


【解决方案1】:

您可以使用自定义 exception handler function (set_exception_handler()) 和 error handler (set_error_handler()) 将错误转为异常 (example)

【讨论】:

  • PHP 中的异常和错误处理程序与真正的 HTTP 错误无关。除非您指定 Web 服务器将请求重定向到 PHP 应用程序,否则它永远不会到达 PHP 应用程序,因此此答案不完整,但问题可能过于广泛。
【解决方案2】:
ErrorDocument 404 /404.html

404 这是您的错误代码,/404.html 是您发生错误时的重定向文件。 这是你的教程.. http://www.totallyphp.co.uk/custom-error-pages-using-htaccess

【讨论】:

    猜你喜欢
    • 2013-07-04
    • 2020-01-06
    • 1970-01-01
    • 2019-02-27
    • 1970-01-01
    • 1970-01-01
    • 2010-12-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多