Page 1 sur 1

Pb session et url https

Posté : 16 nov. 2013, 14:44
par shishi666
Bonjour à tous,

j'ai une application dans laquelle au moment du login je stocke en session l'adapter pour la connexion à une bdd (qui est différente selon l'utilisateur), en http tout fonctionne parfaitement mais voila lorsque l'on passe en https il ne trouve plus l'adapter j'ai lu qu’apparemment le problème viendrait du fait que l'identifiant de la session ne soit pas transmit en https.

J'aurais voulu savoir si vous auriez des solutions pour conserver l'adapter en fonction de l'utilisateur connecté.

Merci d'avance
Cordialement shishi

Re: Pb session et url https

Posté : 16 nov. 2013, 15:52
par yann18
bonjour,

en principe on impose https au client bien avant l'initialisation de la session c-a-d lorsque l'internaute arrive sur le formulaire de connexion et imposer l'utilisation https tout au long de la session.

Re: Pb session et url https

Posté : 16 nov. 2013, 16:17
par shishi666
Bonjour,
merci d'avoir répondu je ne suis pas sur de tout avoir compris mais il y à 2 url différentes 1 en http et l'autre en https.
Mon application se lance sur la page index (par exemple) et l'url est déjà en https et la session déjà initialisée et pourtant ma variable session n'est pas transmise entres les pages.

J'espère avoir bien compris ta réponse dans le cas contraire peut tu m’expliquer stp

Merci d'avance

Cordialement shishi

Re: Pb session et url https

Posté : 16 nov. 2013, 21:10
par yann18
tu peux essayer de modifier les paramètres du cookie de session pour permettre au navigateur d'envoyer le cookie de session pour tous tes domaines et sous-domaines. Pour modifier les paramètres du cookie de session:
-en php
<?php
ini_set('session.cookie_domain', '.domain.com'); //à appeler avant tout début de session
session_start();
?>
-ou dans le fichier de config php.ini( ou dans le vhost)

Code : Tout sélectionner

session.cookie_domain = ".domain"

Re: Pb session et url https

Posté : 22 nov. 2013, 13:25
par shishi666
Bonjour,

Désoler pour le temps qu'il m'a fallu pour tester votre solution, j'ai donc rajouté au tout début de mon code :
ini_set('session.cookie_domain', '.inra.fr');
et toujours pareil impossible de récupérer ma variable session.

Auriez vous une autre idée?
Merci d'avance cordialement shishi

Re: Pb session et url https

Posté : 27 nov. 2013, 11:20
par shishi666
Bonjour à tous,
je fais un petit up pour savoir si quelqu'un aurait une idée avec ce que je vais rajouter :

en local voici le contenu du fichier de ma session :

__ZF|a:1:{s:20:"_REQUEST_ACCESS_TIME";d:1385543366.84733295440673828125;}initialized|C:23:"Zend\Stdlib\ArrayObject":127:{a:4:{s:7:"storage";a:1:{s:4:"init";i:1;}s:4:"flag";i:2;s:13:"iteratorClass";s:13:"ArrayIterator";s:19:"protectedProperties";N;}}FlashMessenger|C:23:"Zend\Stdlib\ArrayObject":112:{a:4:{s:7:"storage";a:0:{}s:4:"flag";i:2;s:13:"iteratorClass";s:13:"ArrayIterator";s:19:"protectedProperties";N;}}rouille|C:23:"Zend\Stdlib\ArrayObject":158:{a:4:{s:7:"storage";a:1:{s:7:"adapter";s:24:"rouille-db-adapter-nancy";}s:4:"flag";i:2;s:13:"iteratorClass";s:13:"ArrayIterator";s:19:"protectedProperties";N;}}

et voici le fichier de session sur mon serveur (avec le SSL activé et l'url en https)

__ZF|a:1:{s:20:"_REQUEST_ACCESS_TIME";d:1385543454.4545381069183349609375;}initialized|C:23:"Zend\Stdlib\ArrayObject":36:{x:i:2;a:1:{s:4:"init";i:1;};m:a:0:{}}FlashMessenger|C:23:"Zend\Stdlib\ArrayObject":21:{x:i:2;a:0:{};m:a:0:{}}

et voici la configuration de ma session :
'name' => 'rouille',
'cookie_domain' => '.inra.fr',
'remember_me_seconds' => 1200,
'use_cookies' => true,
'cookie_httponly' => true,
'save_path' => __DIR__ . '/../../data',
'cookie_secure' => true,

Donc apparemment la session s'ouvre bien mais impossible de récupérer mes variables sessions
Quelqu'un aurait une idée svp.

Merci d'avance cordialement

Re: Pb session et url https

Posté : 27 nov. 2013, 18:35
par yann18
en faisant :
//...
'cookie_secure' => true, 
//...
le navigateur ne peut pas renvoyer le cookie sur HTTP car, dans le cas précis, la configuration du cookie exige une connexion sécurisée.

Par contre en mettant cookie_secure à false, le cookie pourra désormais être accessible par HTTPS aussi bien par HTTP:

'name' => 'rouille',
'cookie_domain' => '.inra.fr',
'remember_me_seconds' => 1200,
'use_cookies' => true,
'cookie_httponly' => true,
'save_path' => __DIR__ . '/../../data',
'cookie_secure' => false,  //cette ligne est optionnelle car par défaut le cookie est diffusé sur une connexion non sécurisée.

Re: Pb session et url https

Posté : 27 nov. 2013, 18:42
par yann18
voici les détails sur la configuration d'une session avec ZF2:
session configuration

Re: Pb session et url https

Posté : 28 nov. 2013, 10:17
par shishi666
Bonjour,
merci pour ton retour mais j'ai déjà essayer de mettre den commentaire la ligne :
'cookie_secure' => false, 
et rien n'y fais je suis vraiment à cours d'idée sachant que je débute avec le ZF2.

Donc je suis preneur de toutes suggestions et je posterais la solution si je la trouve car je suis sur qu'elle existe....

Cordialement