1
votes

I'm trying to customize error templates on my Symfony 5 project. I want to use the TwigBundle error renderer because it seems to be the lightest solution.

So I followed this doc : https://symfony.com/doc/current/controller/error_pages.html#overriding-the-default-error-templates

TwigBundle looks like correctly installed as I run this command : composer require symfony/twig-pack without any error.

But now I can't find any error.html.twig in any folder of the TwigBundle, especially in the TwigBundle/Exception/ folder (which doesn't even exist) as suggested in the documentation.

Maybe this is not the good "TwigBundle" I installed ? Or maybe there is a better and lighter solution to customize error pages ?

1
Then why not add such a template file? The documentation does not state anywhere that such a file exists alreadyNico Haase
Oh sorry, my original post miss something, actually the default error template used by symfony is in the (default ?) 'error-handler' bundle in a file called 'error.html.php', and it's used for any error. So adding a file in the twig bundle won't change anything as it's not even used.Rémi Leblanc
the original is actually here: github.com/symfony/symfony/blob/master/src/Symfony/Component/… but you override it according to the docscraigh
yeah I found this one, that's the problem actually. The default template should be 'error.html.twig' in the twig-bundle folder. But symfony isn't using the twig error rendererRémi Leblanc
Please, use the answer section if you've a solution to post to help other users to find your answergp_sflover

1 Answers

2
votes

You need to overwrite the errors templates Like -> In your templates folder you create folders like this templates -> bundles->TwigBundle->Exception In the exception folder you can create one file for every type of error like error404.html.twig OR error403.html.twig error.html.twig # All other HTML errors (including 500)

templates/
 └─ bundles/
  └─ TwigBundle/
    └─ Exception/
      ├─ error404.html.twig
      ├─ error403.html.twig
      └─ error.html.twig      # All other HTML errors (including 500)

Notice that this error page will be displayed just in prod

Source : https://symfony.com/doc/current/controller/error_pages.html