0

我想保护登录屏幕后面的页面的全部内容。我的目标是在英文页面前加上 (/en),而不是在德文页面前加上 (/)。

我的控制器注释看起来是这样的:

controllers:
   resource: ../../src/Controller/
   type: annotation
   prefix:
      en: '/en'
      de: ''

这是我的 security.yml 的一部分:

  access_control:
    - { path: '^/[^/]+/login$', role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: '^/[^/]+/logout$', role: ROLE_USER }
    - { path: '^/[^/]+/register$', role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: '^/[^/]+/reset-password$', role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: '^/[^/]+/', role: ROLE_USER }

使用该配置,受保护的内容仍然可供所有人使用。

在尝试以下操作时,我得到重定向循环过多的重定向。

   - { path: ^/, role: ROLE_USER }

有人可以提供解决方案吗?我正在使用 Symfony 4.4 LTS。

最好的问候,斯特凡

4

0 回答 0