Ich habe einfach Login-Seite und Sicherheit wie folgt aufgebaut:Asse Dateien in Symfony sind hinter der Firewall?
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 }
Und in meiner base.html.twig Datei habe ich
{% stylesheets '@BrStgCcBundle/Resources/public/css/bootstrap.css' %}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
und jene Datei einschließlich funktioniert nur, wenn ich autorisiert bin in App. Nach der Anmeldung findet das System dieses Asset, aber vorher nicht, und wenn ich dem generierten Link von assetic folge, werde ich zur Login-Seite weitergeleitet.
In Ansicht sieht der Link wie folgt:
<link rel="stylesheet" href="/app_dev.php/css/026adfc_bootstrap_1.css" />
Diese Datei existin auf Laufwerk, und wenn, wenn zeigt korrekte CSS angemeldet aufgerufen, wenn nicht angemeldet es mir Umleitungen Seite einzuloggen.
Ich wette, das ist die Lösung . –
Dies ist eine lahme Lösung. Verwenden Sie die in einer anderen Antwort vorgeschlagene 'dev'-Firewall. –
Das ist falsch, die wirkliche Lösung für das Problem ist wie in Bartosz Rychlicki Antwort – loostro