我有简单的登录页面和安全设置,如下所示:
firewalls:
main:
pattern: ^/
form_login:
provider: fos_userbundle
csrf_provider: form.csrf_provider
use_referer: true
always_use_default_target_path: true
default_target_path: /
logout: true
anonymous: true
access_control:
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/, role: ROLE_ADMIN }
在我的 base.html.twig 文件中我有
{% stylesheets '@BrStgCcBundle/Resources/public/css/bootstrap.css' %}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
仅当我在应用程序中获得授权时,包含这些文件才有效。因此,登录后系统会找到该资产,但在此之前它不会找到,当我按照 assetic 生成的链接时,我会被重定向到登录页面。
在视图中,链接如下所示:
<link rel="stylesheet" href="/app_dev.php/css/026adfc_bootstrap_1.css" />
该文件存在于驱动器上,当登录时调用时,会在未登录时显示正确的 CSS,它将我重定向到登录页面。
我还发现如果添加到security.yml
:
firewalls:
dev:
pattern: ^/(_profiler|_wdt|css|js|assets)
security: false
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)