Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne]Symfony2 - dziwne przekierowanie
Forum PHP.pl > Forum > Przedszkole
kosmos
Witam,
Korzystam z wbudowanego modułu logowania w Symfony, który od czasu do czasu powoduje dziwne przekierowanie na takie m.in. adresy:
http://localhost/Logowanie3/web/app_dev.php/_wdt/74b8fa
http://localhost/Logowanie3/web/app_dev.php/_wdt/329ba8
[/php]

Spotkaliście się z czymś takim? Dlaczego tak się dzieje?

Znalazłem coś takiego:
http://stackoverflow.com/questions/1481198...ead-of-homepage

Ale przydałoby się to wytłumaczyć.

EDIT:

Zmieniłem security.yml dodając tam dev: oraz prod:
  1. security:
  2. encoders:
  3. Acme\LogowanieBundle\Entity\User:
  4. algorithm: sha1
  5. encode_as_base64: false
  6. iterations: 1
  7.  
  8. # Symfony\Component\Security\Core\User\User: plaintext
  9.  
  10. role_hierarchy:
  11. ROLE_ADMIN: ROLE_USER
  12. ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
  13.  
  14. providers:
  15. chain_provider:
  16. chain:
  17. providers: [in_memory, user_db]
  18. in_memory:
  19. memory:
  20. users:
  21. ryan: { password: ryanpass, roles: [ 'ROLE_USER' ] }
  22. admin: { password: kitten, roles: [ 'ROLE_ADMIN' ] }
  23. user_db:
  24. entity: { class: Acme\LogowanieBundle\Entity\User, property: username }
  25.  
  26. firewalls:
  27. dev:
  28. pattern: ^/(_(profiler|wdt)|css|images|js)/
  29. security: false
  30. prod:
  31. login_firewall:
  32. pattern: ^/login$
  33. security: false
  34. context: login
  35. anonymous: ~
  36. secured_area:
  37. pattern: ^/
  38. form_login:
  39. # always_use_default_target_path: true
  40. # default_target_path: /login
  41. login_path: login
  42. check_path: login_check
  43. default_target_path: /login_check
  44. logout:
  45. path: /logout
  46. target: /login


Ale niestety S2 zwraca błąd:
  1. InvalidConfigurationException: Unrecognized options "dev, prod" under "security"


Nie wiem z jakiego powodu dev prod nie są rozpoznawane skoro przykłady w sieci je zawierają:
http://stackoverflow.com/questions/9085432...y2-security-yml

Pomożecie?
Crozin
Przy domyślnej konfiguracji Symfony z paczki Standard Edition adresy zaczynające się od /_wdt/ należą do web debug toolbara czyli tego paska na dole strony z podstawowymi informacjami n/t żądania i wykorzystanych zasobów. Analogicznie adresy z prefiksem /_profiler/ należą do "pełnej wersji" tego paska, czyli profilera, który dostępny jest po kliknięciu właściwie w cokolwiek na WDT.

Przy błędnej konfiguracji mechanizmu zabezpieczeń może dojść do niewłaściwej próby przekierowania na adres należący do WDT. Twój błąd wiąże się właśnie z tym. Masz źle sformatowany plik security.yml, przez co jest on parsowany w błędny sposób. dev, prod, secured_area powinny być podelementami firewalls, nie security - poczytaj więcej o formacie YAML: http://en.wikipedia.org/wiki/YAML
kosmos
Tak wiem, że security.yml był błędnie skonfigurowany, ale nie potrafiłm skonfigurować go w sposób poprawny smile.gif
Póki co zrobiłem to w ten sposób i problem z wdt już nie występuje.

  1. firewalls:
  2. dev:
  3. pattern: ^/(_(profiler|wdt)|css|images|js)/
  4. security: false
  5. login_firewall:
  6. pattern: ^/login$
  7. security: false
  8. context: login
  9. anonymous: ~
  10. secured_area:
  11. pattern: ^/
  12. form_login:
  13. # always_use_default_target_path: true
  14. # default_target_path: /login
  15. login_path: login
  16. check_path: login_check
  17. default_target_path: /
  18. logout:
  19. path: /logout
  20. target: /login


Mam jednak jeszcze jedno pytanie:
Teraz pracuję w środowisku dev.
Po zrobieniu projektu i wrzuceniu go na serwer, rozumiem że to się zmieni.
Czy mógłbym prosić o informacje, źródła, gdzie mógłbym dowiedzieć się conieco o tych "trybach" pracy?
Crozin
Serwer deweloperski i produkcyjny to jedno, środowisko Symfony (prod - app.PHP, dev - app_dev.php, inne) to drugie. Jedno z drugi nie ma nic wspólnego.
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.