无法覆盖 symfony 5 异常模板

can't override symfony 5 exception templates

我按照 Symfony 当前文档来覆盖异常模板: How to Customize Error Pages

在我的 AccesDeniedListener.php class 中,我输入:

 public function onKernelException(ExceptionEvent $event, string $eventName = null): void
{
    $exception = $event->getThrowable();
    if (!$exception instanceof AccessDeniedException) {
        return;
    }

    // ... perform some action (e.g. logging)

    // optionally set the custom response
    $event->setResponse(new Response(null, 403));

    // or stop propagation (prevents the next exception listeners from being called)
    //$event->stopPropagation();
}

我已经安装了symfony/twig-pack

并在我的模板文件夹中添加了 Execption twigs :

终于没有应用我的新树枝

如果您的应用程序环境设置为 prod,您应该获得自定义错误页面。如果您的应用程序环境设置为开发,那么您仍然会收到开发错误消息。要在开发中测试您的自定义页面,您可以按照您所遵循的指南中的说明添加特殊路线。

# config/routes/dev/framework.yaml
_errors:
    resource: '@FrameworkBundle/Resources/config/routing/errors.xml'
    prefix:   /_error

在 dev 中使用该配置,您应该能够访问 http://example.com/_error/403