Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony][SF2][Symfony2] security.yml na produkcji
Forum PHP.pl > Forum > PHP > Frameworki
damianooo
Jakiś czas temu zrobiłem deploy aplikacji na serwerze produkcyjnym. Zauważyłem jednak że po zalogowaniu się użytkownika w aplikacji przekierowanie do konkretnej strony działa inaczej niż dla środowiska developerskiego.

Na PRODzie przekierowuje mnie domyślnie do stony "/" natomiast na DEV do tego co mam ustawione poniżej a więc "liga_typerow_table" .

Plik security.yml jest przecież wspólny dla wszystkich środowisk. Skąd więc Symfony bierze inną konfigurację ?

mój security.yml :

  1. firewalls:
  2. dev:
  3. pattern: ^/(_(profiler|wdt)|css|images|js)/
  4. security: false
  5.  
  6. liga_typerow_security:
  7. switch_user: true
  8. pattern: ^/
  9. anonymous: ~
  10. form_login:
  11. check_path: _check_path
  12. login_path: liga_typerow_login
  13. default_target_path: liga_typerow_table
  14. logout:
  15. path: _logout
  16. target: liga_typerow_login




prz3kus
- wyczyścić cache
- sprawdzić ścieżki "php bin/console debug:router"
- sprawdzić plik .htaccess
damianooo
Udało się to rozwiązać ustawiając dodatkowy parameter w pliku security.yml "always_use_default_target_path" na "true"

A więc tak jak poniżej nie ma problemu z przekierowaniem na produkcji po zalogowaniu:

  1. form_login:
  2. check_path: _check_path
  3. login_path: liga_typerow_login
  4. always_use_default_target_path: true
  5. default_target_path: liga_typerow_table


Pytanie czemu ta opcja była potrzebna aby to zadziałało ?
Dlaczego na DEV nie była ta opcja potrzebna i po zalogowaniu przekierowanie było poprawne ?

(routing.yml i routing_dev.yml zrobiłem porządnie - widać to w moim poprzednim temacie )
Pyton_000
Wg. dokumentacji na default_target_path zostaniesz przekierowany jesli w sesji nie było zapisanej informacji o strnie z której przyszedłeś. Jeśli była to wracała z powrotem.

Jak masz profiler to mogłeś sobie porównać przebieg requesta i wartości w sesji.

Nie wiem czy czytałeś ale: https://symfony.com/doc/current/security/form_login.html
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.