-
Envoi de cookie
Bonjour,
Je ne sais pas si je pose la question au bon endroit mais je me lance.
Donc voila, j'ai un site web tournant sur un serveur apache qui comprend un page de login a l'adresse suivante :
http://mon_ip/login.php
Cette page contient une application flex qui va se connecter à un serveur tomcat pour effectuer une opération. Suite à cette opération il y a un cookie nommé JSESSIONID qui est créé.
Pour l'appelle de Tomcat j'ai procédé de deux manière différente, mais aucune ne donne de résultat pour la suite.
:arrow:La première : j'appelle directement Tomcat depuis mon navigateur sur l'adresse http://mon_ip:8080/mon_app/. Mais dans ce cas le cookie est créé pour l'hote http://mon_ip:8080/
:arrow:La seconde : J'appelle apache sur l'adresse http://mon_ip/mon_app et apache est configuré en proxy pour renvoyé l'appelle vers http://mon_ip:8080/mon_app/. Dans ce cas le cookie créé est pour l'hote http://mon_ip/
Puis je voudrais aller sur une autre page (la page d'accueil par exemple : http://mon_ip/index.php) et utiliser ce cookie. Mais le problème est que ce cookie n'est pas envoyé.
Est ce que quelqu'un pourrai m'éclairer sur la visibilité des cookie et leur envoi au serveur. J'ai du mal à voir pourquoi ce cookie n'est pas envoyé.
J'espère avoir été clair dans mes explications.
Merci d'avance.
A bientôt
-
Apres avoir fait quelques recherche, j'ai compris que les cookies avaient un attribut "chemin" et donc que mon cookie etait créé sur le chemin "/mon_app".
Par conséquent lors de ma requête http://mon_ip/index.php, le cookie n'est pas envoyé puisque par sur le chemin "/".
Ma question devient donc la suivante :
:arrow: Y aurait il un mécanisme qui permette de dupliquer le cookie sur un autre chemin
Merci d'avance
Cordialement
Loic
-
Je vous envoi la trace des en-tete HTTP lors de la connexion
----------------------------------------------------------
http://192.168.0.10/server/messagebroker/amf
POST /server/messagebroker/amf HTTP/1.1
Host: 192.168.0.10
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6 (.NET CLR 3.5.30729)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://192.168.0.10/applications/Login.swf
Content-type: application/x-amf
Content-length: 244
HTTP/1.x 200 OK
Date: Thu, 17 Dec 2009 10:41:39 GMT
Server: Apache-Coyote/1.1
Content-Type: application/x-amf
Content-Length: 245
Set-Cookie: JSESSIONID=39D0A761ED76EA63534F22D11BB83478; Path=/server
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
X-Antivirus: avast! 4
X-Antivirus-Status: Clean
----------------------------------------------------------
http://192.168.0.10/server/messagebr...4F22D11BB83478
POST /server/messagebroker/amf;jsessionid=39D0A761ED76EA63534F22D11BB83478 HTTP/1.1
Host: 192.168.0.10
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6 (.NET CLR 3.5.30729)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: JSESSIONID=39D0A761ED76EA63534F22D11BB83478
Referer: http://192.168.0.10/applications/Login.swf
Content-type: application/x-amf
Content-length: 308
HTTP/1.x 200 OK
Date: Thu, 17 Dec 2009 10:41:39 GMT
Server: Apache-Coyote/1.1
Content-Type: application/x-amf
Content-Length: 188
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive
X-Antivirus: avast! 4
X-Antivirus-Status: Clean
-
Bon j'ai trouvé la solution à mon problème
Finalement ce post aurai du être posté dans la rubrique Apache plutot que PHP
Je donne la réponse ca pourra peut être aider quelqu'un un jour.
Donc comme je l'avais dit, mon serveur Apache était configuré en tant que proxy pour attaquer mon serveur Tomcat.
Et dans ce cas il existe une directive Apache qui permet de rediriger les cookies sur un autre chemin : ProxyPassReverseCookiePath
Par conséquent tous mes cookie qui sont générés par Tomcat sur le chemin "/mon-app", sont redirigés à la racine du serveur Apache "/" (ou ailleurs au besoin)