3

サーバーがダウンすると、すべてのリクエストMaintenanceModeExceptionがスローresources/views/errors/503.blade.phpされてレンダリングされます。パスを変更しようとしていますが、その例外処理と 503 応答がどこにあるのかわかりません。

4

1 に答える 1

7

すべての http 例外は、renderHttpException()内部のメソッドによって処理されます\Illuminate\Foundation\Exceptions\Handler.php

/**
 * Render the given HttpException.
 *
 * @param  \Symfony\Component\HttpKernel\Exception\HttpException  $e
 * @return \Symfony\Component\HttpFoundation\Response
 */
protected function renderHttpException(HttpException $e)
{
    $status = $e->getStatusCode();

    if (view()->exists("errors.{$status}")) {
        return response()->view("errors.{$status}", ['exception' => $e], $status, $e->getHeaders());
    } else {
        return $this->convertExceptionToResponse($e);
    }
}

その 503 例外のカスタム ビューを表示するとします。この場合、resources/views/errors 内に独自の 503.blade.php ファイルを作成するだけです。

于 2016-11-21T16:58:52.657 に答える