【问题标题】:replace symfony2 access denied template替换 symfony2 拒绝访问模板
【发布时间】:2016-10-06 12:05:05
【问题描述】:

使用 Symfony2.3.​​4、PHP5.6.3 和 Twig。

看,这是 symfony 每次用户尝试访问 url 时使用的模板,但它没有通过 security.yml 文件中设置的访问控制。 我想要的只是将用户重定向到我创建/选择的模板。

如果我在 PHP 类中限制用户的访问,当然,我可以询问它的角色/权限并从那里决定,但我想使用我已经在 security.yml 文件中设置的访问控制,说像一个全局 .html.twig 文件来替换下面的文件。

【问题讨论】:

    标签: php symfony security


    【解决方案1】:

    您看到的页面是“错误”页面的调试版本......它永远不应该在生产中使用......因为它泄露了太多信息......

    我假设您只想向您的用户显示一个简单的 403 错误消息...而不是异常的堆栈跟踪。

    所以使用不带 app_dev.php 的 url ...看看其他人会看到什么...不仅仅是开发人员。

    模板存在于 vendor\symfony\symfony\src\Symfony\Bundle\TwigBundle\Resources\views\Exception\error.html.twig 在 symfony 下的 vendor 目录中

    要替换它,请复制文件并将其放在您的应用程序目录中

    app/Resources/TwigBundle/views/Exception/error.html.twig 并将其更改为很酷的东西...

    清除缓存 php app/console cache:clear -e prod

    你应该很高兴...... :)

    参考SF Cookbook

    【讨论】:

      猜你喜欢
      • 2013-09-15
      • 2014-11-19
      • 2016-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多