1

在 Symfony 4.4 Flex 中使用自定义错误模板时,我遇到了一个问题。根据https://symfony.com/doc/4.4/controller/error_pages.html中的指南,一切都已正确设置

当我运行应用程序时,我可以访问自定义错误模板- 但如果我更改为prod(当然设置为false/0),我会得到默认的 Symfony“500 内部服务器错误”页面。我什至在远程主机上部署应用程序后对其进行了测试,当我尝试访问 /random-unexisting-page 时,它​​也是同样的问题(已经得到了 error404.html.twig 模板集并且它通过 /_error 在“dev”上工作/404)。/_error/{errorCode}APP_ENV=devAPP_ENVAPP_DEBUG

我想知道,它与 /config/ 中的其他配置有什么关系吗?你知道问题可能是什么吗?

4

1 回答 1

0

我做了几次尝试,我想我已经理解了你的问题。

所以当你想创建一个个性化的错误页面时,首先你需要在模板目录下添加如下路径,和你的链接说的一样

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

最常见的错误是 500,因此您可以添加它:error500.html.twig或者只保留通用错误,这取决于您。

重要的是,每当您在目录中添加文件错误或只是对现有文件进行更改时:您必须启动命令以清除缓存(您只能在项目没有错误时启动此命令)。如果您不这样做,更改将不会被可视化。

脚步:

  • 修复错误或从以前的工作版本开始
  • 启动 clear 命令:php bin\console cache:clear,你会得到类似result_of_clear_cache的东西
  • 刷新页面,您应该会看到新页面

PS。如果您需要一些视觉参考:

小路

错误文件

result_on_browser

于 2021-01-23T09:03:49.253 回答