Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/09/2007, 12h18   #1
Invité régulier
 
Inscription : mars 2002
Messages : 17
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 17
Points : 6
Points : 6
Par défaut [Cookies] Serveur opérationnel

Bonjour,

Sur mes scripts locaux mes variables de sessions fonctionnent bien mais pas sur le serveur opérationnel.

La configuration en local est Php 4.3.10 sous windows (avec easyphp) en opérationnel Php 4.3.2 sous Linux

Au niveau des paramètres de session du phpinfo() j'ai 3 différences entre le local et l'opérationnel :

Code :
1
2
3
4
 
session.save_path (ce qui est normal en local ça commence par C:)
session.bug_compat_42 qui vaut "Off" en local et "On" en opérationnel
session.gc_divisor qui vaut 1000 en local et 100 en opérationnel
Quand je fais touner le script suivant :
Code :
1
2
3
4
5
6
 
session_start();
 
echo "_SESSION['essai']=",$_SESSION['essai'],"<br>";
if ($_SESSION['essai']=="") $_SESSION['essai']='une variable de session';
echo "_SESSION['essai']=",$_SESSION['essai'],"<br>";
En local, lors du premier appel de la page, voilà ce qu'on peut voir :

Code :
1
2
3
 
_SESSION['essai']=
_SESSION['essai']=une variable de session
Et si je rappelle la page tout de suite après :

Code :
1
2
3
 
_SESSION['essai']=une variable de session
_SESSION['essai']=une variable de session
Ce qui est normal, alors qu'en opérationnel j'ai constament l'affichage suivant, même si je recharge la page plusieurs fois :

Code :
1
2
3
 
_SESSION['essai']=
_SESSION['essai']=une variable de session
Ce qui signifie que la session ne tient pas, je ne vois vraiment pas d'où cela peut venir, quelqu'un a une idée ?
Patrick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2007, 14h09   #2
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
Est ce que le cookie de session existe bien ?
Tu peux nous montrer toute les valeurs de configuration qui commencent par "session." dans le phpinfo ?
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/09/2007, 15h39   #3
Invité régulier
 
Inscription : mars 2002
Messages : 17
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 17
Points : 6
Points : 6
En fait cela parait assez complexe, mais voici quelques infos supplémentaires :

1- Sur la même machine opérationnelle (même serveur apache, même version de php) et consulté depuis IE, mon script tourne correctement sur un autre domaine, mais ne fonctionne pas sur le premier domaine !!

2 - Sous IE je ne vois pas les cookies (d'aucun des deux domaines) mais je vois d'autres cookies (ex developpez.net)

3- En ce qui concerne le niveau de confidentialité de IE (j'ai IE 6) et sa gestion des cookies, c'est le niveau "moyen" et j'ai laissé dans les paramètres avancés le mode automatique (ce qui est le mode par défaut je pense) et si je passe en mode manuel "en acceptant tout" cela ne change rien

4- Sous Firefox les deux domaines fonctionnent bien et je vois les cookies des deux domaines.

5- Je ne vois aucune différences notables entre les deux phpinfo() excepté que les deux variables _SERVER["DOCUMENT_ROOT"] ont des chemins totalement différents dès la racine (aucun répertoire commun), les autres différences concernant toutes des chemins aussi.

Donc voilà la partie session du phpinfo, en sachant quelle est quand même la même sur les deux domaines :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
 
session
Session Support  enabled  
Registered save handlers  files user  
 
Directive Local Value Master Value 
session.auto_start Off Off 
session.bug_compat_42 On On 
session.bug_compat_warn On On 
session.cache_expire 180 180 
session.cache_limiter nocache nocache 
session.cookie_domain no value no value 
session.cookie_lifetime 0 0 
session.cookie_path / / 
session.cookie_secure Off Off 
session.entropy_file no value no value 
session.entropy_length 0 0 
session.gc_divisor 100 100 
session.gc_maxlifetime 1440 1440 
session.gc_probability 1 1 
session.name PHPSESSID PHPSESSID 
session.referer_check no value no value 
session.save_handler files files 
session.save_path /tmp /tmp 
session.serialize_handler php php 
session.use_cookies On On 
session.use_only_cookies Off Off 
session.use_trans_sid Off Off
Patrick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/10/2007, 10h20   #4
Invité régulier
 
Inscription : mars 2002
Messages : 17
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 17
Points : 6
Points : 6
J'ai finalement résolu mon problème : chose que je n'avais pas précisée (car je pensais qu'elle n'avait pas d'importance) le nom de domaine contenait un "_" et tout le problème venait de là !! En le renommant sans ce caractère tout fonctionne bien
Patrick est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h57.


 
 
 
 
Partenaires

Hébergement Web