Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SOLVED][Symfony]1.4 Problemy z SessionStorage
Forum PHP.pl > Forum > PHP > Frameworki
pepe77
Po przeniesieniu działającej aplikacji na produkcję (ovh), przestała mi działać jedna, jedyna funkcjonalność.
Mianowicie - chodzi o upload plików, który wykorzystuje flash.
Z tego powodu mam przedefiniowane SessionStorage, o tak:
  1. class MySessionStorage extends sfSessionStorage
  2.  
  3. {
  4.  
  5. public function initialize($options = null)
  6.  
  7. {
  8. sfContext::getInstance()->getLogger()->info('entering MySessionStorage');
  9. sfContext::getInstance()->getLogger()->info('session_id='.session_id());
  10. // work-around for swfuploader
  11. if(sfContext::getInstance()->getRequest()->getParameter('xxx')) {
  12. session_id(sfContext::getInstance()->getRequest()->getParameter('xxx));
  13.  
  14. }
  15. parent::initialize($options);
  16. sfContext::getInstance()->getLogger()->info('session_id='.session_id());
  17. sfContext::getInstance()->getLogger()->info('leaving MySessionStorage');
  18.  
  19. }
  20.  
  21. }
  22.  
  23.  


Wywoływana akcja wymaga logowania, więc odpowiedni parametr jest ustawiony (i przesyłany w POST).
Powyższa metoda JEST wywoływana (wstawiłem do kodu logowanie).

Problem:
Mimo, że user jest już zalogowany, wywołana akcja zachowuje się tak, jakby nie był zalogowany.

Aug 22 23:15:27 symfony [info] {sfPatternRouting} Match route "default" (/:module/:action/*) for /document/uploadify with parameters array ( 'module' => 'document', 'action' => 'uploadify',)
[..]
Aug 22 23:15:27 symfony [info] leaving MySessionStorage
Aug 22 23:15:27 symfony [info] {sfFilterChain} Executing filter "sfRenderingFilter"
Aug 22 23:15:27 symfony [info] {sfFilterChain} Executing filter "sfBasicSecurityFilter"
Aug 22 23:15:27 symfony [info] {sfBasicSecurityFilter} Action "document/uploadify" requires authentication, forwarding to "sfGuardAuth/signin"
Aug 22 23:15:27 symfony [info] {sfFilterChain} Executing filter "sfRenderingFilter"
Aug 22 23:15:27 symfony [info] {sfFilterChain} Executing filter "sfExecutionFilter"
Aug 22 23:15:27 symfony [info] {sfGuardAuthActions} Call "sfGuardAuthActions->executeSignin()"

Jakieś pomysły?

update: myślałem, że może ustawiane session_id nie działa, ale wygląda na to, że wszystko jest ok:
Aug 23 06:24:38 symfony [info] entering MySessionStorage
Aug 23 06:24:38 symfony [info] session_id=
Aug 23 06:24:38 symfony [info] session_id=d13ans5jf07aveufb2qcdv0k71
Aug 23 06:24:38 symfony [info] leaving MySessionStorage

Z góry dziękuję,
pepe



Rozwiązanie:

http://forum.ovh.com/showthread.php?t=69460

Na serwerze OVH trzeba ustawić własny katalog do przechowywania sesji.
ini_set ('session.save_path','/homez.xxxx/xxxxxxxxx/sessions') ;

phpion
Miałem podobny problem ale korzystając z Uploadify w Kohanie. U mnie pomogło wyłączenie regeneracji sesji dla żądań "uploadifowych" wink.gif Nie wiem czy w Sf też jest coś takiego jak regeneracja sesji - jeśli jest to spróbuj to wyłączyć.
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.