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 20/06/2006, 10h17   #1
Expert Confirmé
 
Avatar de titoumimi
 
Inscription : décembre 2003
Messages : 3 717
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2003
Messages : 3 717
Points : 3 082
Points : 3 082
Par défaut [Cookies] Cacher le PHPSESSID ?

Bonjour à tous.

Après quelques recherches, je me résout à faire appel à votre aide
Je cherche à effacer le PHPSESSID qui apparait spontanément dans mes URL (notement pour les moteurs de recherche). Je me sert de la variable de session pour connaitre la langue choisie par mon visiteur pour naviguer sur mon site (tout est inclus en fonction de cette variable).

J'ai essayé un htaccess conenant
Code :
php_flag session.use_trans_sid off
, mais ça me génère une erreur chez mon hébergeur (OVH).

J'ai aussi essayé de mettre dans mon code
Code :
@ini_set('session.use_trans_sid', 0);
avant mon session_start, mais cela semble demeurer sans effet (test en y accédant depuis mon navigateur et en simulant un spider depuis http://www.spider-simulator.com/).

Avez vous en stock une solution fiable qui me permette de faire ça ?

Ou avez-vous une idée qui me permettrai par exemple de simuler un répertoire FR/ et un autre EN/ en fonction de la langue, qui serait traduit en interne ? (url rewriting ? je ne sait pas, jamais essayé, ça reste assez obscur pour moi) sachant que je peux avoir jusqu'à 12 variables différentes transmises par l'URL...

Merci d'avance à vous.
__________________
Globalement inoffensif
Merci de respecter les règles du forum.
Aucune question technique par MP !
_______________________________________________________________________
La rubrique Ruby / Rails recrute. Contactez moi !
_______________________________________________________________________
Cours Ruby et Ruby on Rails (RoR) - FAQ Ruby / Rails - Livres Ruby / Rails
Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
Tutoriaux HTML/CSS et PHP
titoumimi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 10h30   #2
Membre chevronné
 
Inscription : octobre 2005
Messages : 634
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : octobre 2005
Messages : 634
Points : 678
Points : 678
Il faut stocker le PHPSESSID dans un cookie plutôt que dans l'URL. Il existe de nombreuses manières pour faire celà, et je ne peux pas choisir pour vous celle qui vous convient le mieux. Voici donc un lien :
http://fr.php.net/manual/fr/ref.session.php
qui devrait vous expliquer tout celà mieux que moi.
BugFactory est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 10h42   #3
Expert Confirmé
 
Avatar de titoumimi
 
Inscription : décembre 2003
Messages : 3 717
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2003
Messages : 3 717
Points : 3 082
Points : 3 082
Merci pour ton lien. Je viens d'essayer d'utiliser
Code :
ini_set('session.use_only_cookies', 1);
Mais le problème demeure... Pas de message d'erreur, mais toujours l'id de session de visible ...
__________________
Globalement inoffensif
Merci de respecter les règles du forum.
Aucune question technique par MP !
_______________________________________________________________________
La rubrique Ruby / Rails recrute. Contactez moi !
_______________________________________________________________________
Cours Ruby et Ruby on Rails (RoR) - FAQ Ruby / Rails - Livres Ruby / Rails
Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
Tutoriaux HTML/CSS et PHP
titoumimi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 12h14   #4
Membre éclairé
 
Inscription : juillet 2005
Messages : 1 221
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 1 221
Points : 398
Points : 398
Tiens moi j'avais très exactement le même problème que toi, chez ovh et tout.

J'ai fait ça :
Code :
1
2
3
4
if(isset( $_COOKIE[ session_name() ] ) )
{
 session_start()
;}
ça force le passage des sessions en cookies, y'a plus d'id de session dans l'url.
__________________
C'est pas parce que j'ai tort que vous avez raison.
psychoBob est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 13h03   #5
Rédactrice
 
Avatar de xave
 
Inscription : mai 2002
Messages : 860
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : mai 2002
Messages : 860
Points : 824
Points : 824
J'ai pas compris le coup du répertoire /EN ou /FR pour traduire tes pages, tu peux m'en dire un peu plus?
__________________
Les règles du forum
Cours et tutoriels php
Développements web (CSS, (X)HTML,javascript, etc...)
Cours et tutoriels MySQL
Tutoriels Ajax
Initiation à PHP-GTK1


Il n'est point de bonheur sans liberté, ni de liberté sans courage. Péricles
xave est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 13h12   #6
Membre régulier
 
Inscription : juin 2004
Messages : 92
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 92
Points : 75
Points : 75
Citation:
Envoyé par titoumimi
Ou avez-vous une idée qui me permettrai par exemple de simuler un répertoire FR/ et un autre EN/ en fonction de la langue, qui serait traduit en interne ? (url rewriting ? je ne sait pas, jamais essayé, ça reste assez obscur pour moi) sachant que je peux avoir jusqu'à 12 variables différentes transmises par l'URL...
C'est relativement simple à faire en url rewriting:
fichier .htaccess:
Code :
1
2
 
RewriteRule ^\/[([a-zA-Z]+)\/(.*)$ $2&lang=$1  [NC,L]
Cela va transformer une url du type:
http://www.domain.tld/en/index.php?id=1
en:
http://www.domain.tld/en/index.php?id=1&lang=en

Cela pose un petit problème lorsque tu ne passes pas d'autre paramêtres, mais en jouant sur la regexp on peut s'en arranger
CrazyCat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 13h41   #7
Expert Confirmé
 
Avatar de titoumimi
 
Inscription : décembre 2003
Messages : 3 717
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2003
Messages : 3 717
Points : 3 082
Points : 3 082
Citation:
Envoyé par xave
J'ai pas compris le coup du répertoire /EN ou /FR pour traduire tes pages, tu peux m'en dire un peu plus?

En fait, si je pouvait trouver un système d'url rewriting qui me modifierai mes liens en ./FR/index.php?id_p=12, et que ça comprenne /index.php?id_p=12&langue=FR, ça serait le top, ça distinguerai bien mes langues du point de vue des moteurs de recherche (le problème, c'est que je peux bien sur le faire du point de vue structurel, mais que ça ne m'arrange pas étant donné que ça me fait dupliquer mon contenu...)


Merci aux autres, j'essaie vos solutions, et je vous tiens au courant.
__________________
Globalement inoffensif
Merci de respecter les règles du forum.
Aucune question technique par MP !
_______________________________________________________________________
La rubrique Ruby / Rails recrute. Contactez moi !
_______________________________________________________________________
Cours Ruby et Ruby on Rails (RoR) - FAQ Ruby / Rails - Livres Ruby / Rails
Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
Tutoriaux HTML/CSS et PHP
titoumimi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 14h01   #8
Expert Confirmé
 
Avatar de titoumimi
 
Inscription : décembre 2003
Messages : 3 717
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2003
Messages : 3 717
Points : 3 082
Points : 3 082
Citation:
Envoyé par psychoBob
Tiens moi j'avais très exactement le même problème que toi, chez ovh et tout.

J'ai fait ça :
Code :
1
2
3
4
if(isset( $_COOKIE[ session_name() ] ) )
{
 session_start()
;}
ça force le passage des sessions en cookies, y'a plus d'id de session dans l'url.

Merci à toi, ça marche très bien

Par contre, le risque est que les robots ne puissent plus référencer toute une partie de mon site, la partie en français étant uniquement accessible via les sessions, la langue par défaut étant l'anglais non ?
__________________
Globalement inoffensif
Merci de respecter les règles du forum.
Aucune question technique par MP !
_______________________________________________________________________
La rubrique Ruby / Rails recrute. Contactez moi !
_______________________________________________________________________
Cours Ruby et Ruby on Rails (RoR) - FAQ Ruby / Rails - Livres Ruby / Rails
Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
Tutoriaux HTML/CSS et PHP
titoumimi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 14h15   #9
Membre éclairé
 
Inscription : juillet 2005
Messages : 1 221
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 1 221
Points : 398
Points : 398
Ah là j'ai pas ce problème parce que je n'itilialise la session qu'après identification, ce que ne font pas les robots
__________________
C'est pas parce que j'ai tort que vous avez raison.
psychoBob est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 15h31   #10
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
tu peux changer le nom avec init_set et sur la valeur session.name
ainsi tu peux changer le nom au lieu de PJPSESSID
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 15h33   #11
Expert Confirmé
 
Avatar de titoumimi
 
Inscription : décembre 2003
Messages : 3 717
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2003
Messages : 3 717
Points : 3 082
Points : 3 082
je pense que je vais lâchement abandonner, et me résoudre à transmettre de page en page ma variable de langue ... (c'est petit, j'ai honte ...)

Merci tout de même à tous
__________________
Globalement inoffensif
Merci de respecter les règles du forum.
Aucune question technique par MP !
_______________________________________________________________________
La rubrique Ruby / Rails recrute. Contactez moi !
_______________________________________________________________________
Cours Ruby et Ruby on Rails (RoR) - FAQ Ruby / Rails - Livres Ruby / Rails
Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
Tutoriaux HTML/CSS et PHP
titoumimi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 15h43   #12
Membre régulier
 
Inscription : juin 2004
Messages : 92
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 92
Points : 75
Points : 75
et pourquoi tu n'utilises pas un des atouts d'apache: les fichiers de langues?
index.php <-- langue par défaut
index.php.fr <-- français
index.php.en <-- anglais
...
CrazyCat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 15h53   #13
Expert Confirmé
 
Avatar de titoumimi
 
Inscription : décembre 2003
Messages : 3 717
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2003
Messages : 3 717
Points : 3 082
Points : 3 082
tiens, je ne connaissait pas ça ... Peux-tu m'expliquer un peu plus en détail la manière dont ça s'utilise stp ? ou me donner un lien

Merci d'avance.
__________________
Globalement inoffensif
Merci de respecter les règles du forum.
Aucune question technique par MP !
_______________________________________________________________________
La rubrique Ruby / Rails recrute. Contactez moi !
_______________________________________________________________________
Cours Ruby et Ruby on Rails (RoR) - FAQ Ruby / Rails - Livres Ruby / Rails
Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
Tutoriaux HTML/CSS et PHP
titoumimi 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 04h06.


 
 
 
 
Partenaires

Hébergement Web