New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Jeton de sécurité invalide - Wrong token [+/-RESOLU] #385

Closed
Draleg opened this Issue Jun 1, 2017 · 80 comments

Comments

Projects
None yet
2 participants
@Draleg

Draleg commented Jun 1, 2017

Bonjour,

J'ai voulu installer KrissFeed pour son aspect sans DB, je télécharge le fichier index.php, je vérifie les dépenses(apt-get):
install php-xml
install php-mbstring
install php-curl
Les droits d'accès sont corrects, cependant j'ai un problème lorsque je veux créer mon utilisateur, j'ai quelque soit le login/mdp/langue une erreur de jeton.

Je dispose d'un pluxml/shaarli et je n'ai pas constaté de problème liée aux sessions comme j'ai pu le lire dans un post précédent.

Pour info j'ai effacé mes sessions sauvegardées, je suis rentré consécutivement sur mon blog/shaarli, ce qui m'a donné deux sessions.
Je suis passer sur KrissFeed et la j'ai eu 9 sessions supplémentaires de créées, donc l'accès au chemin et les droits d'écritures sont correctes.

D'où peut provenir ce problème ?

D'avance merci, bonne journée.


ENGLISH VERSION (thank's google)

Hello,

I wanted to install KrissFeed because there is no DB, I download the file index.php, I check the dependency (apt-get):
Install php-xml
Install php-mbstring
Install php-curl
The access rights are corrects, however I have a problem when I want to create my user, I have either login / pass / language a token error.

I have a pluxml / shaarli and I have not noticed a problem related to the sessions like I saw in a previous post.

Just to know, I deleted my saved sessions, I came back consecutively on my blog / shaarli, which gave me two sessions.
I'm going on KrissFeed and I had 9 extra sessions created, so access to the path and write permissions are correct.

Where can this problem come from?

Thank's in advance, have a nice day.

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 1, 2017

Owner

As-tu la possibilité de voir les logs associés à php pour voir s'il y a une erreur ?
Je pense que le problème de jeton ne peut-être lié qu'à la perte d'identification (avec le cookie) entre ton navigateur et le serveur.
As-tu essayé sur plusieurs navigateurs ?
Passes-tu par un proxy ?

Owner

tontof commented Jun 1, 2017

As-tu la possibilité de voir les logs associés à php pour voir s'il y a une erreur ?
Je pense que le problème de jeton ne peut-être lié qu'à la perte d'identification (avec le cookie) entre ton navigateur et le serveur.
As-tu essayé sur plusieurs navigateurs ?
Passes-tu par un proxy ?

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 1, 2017

J'ai bien essayé plusieurs navigateurs, mais le problème était toujours le même.
J'étais au travail et la je passe par un proxy.

Du coup en rentrant chez moi et j'ai pu constater que mon temps de midi à tester n'a servi à rien et que tu as raison concernant l'hypothèse du proxy, car ici tout fonctionne aux petits oignons !

Merci.

Draleg commented Jun 1, 2017

J'ai bien essayé plusieurs navigateurs, mais le problème était toujours le même.
J'étais au travail et la je passe par un proxy.

Du coup en rentrant chez moi et j'ai pu constater que mon temps de midi à tester n'a servi à rien et que tu as raison concernant l'hypothèse du proxy, car ici tout fonctionne aux petits oignons !

Merci.

@Draleg Draleg changed the title from Jeton de sécurité invalide - Wrong token to Jeton de sécurité invalide - Wrong token [RESOLU] Jun 1, 2017

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Et de retour au boulot, impossible de se connecter... je vais devoir passer en 3G pour actualiser mes flux :'(

Draleg commented Jun 2, 2017

Et de retour au boulot, impossible de se connecter... je vais devoir passer en 3G pour actualiser mes flux :'(

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Est-ce que tu peux essayer d'ajouter un '?view=expanded' ou '?view=list' à la fin de l'url quand tu accèdes à la page principale avant de te connecter. J'avais un soucis avec un proxy et une instance shaarli que j'arrivais à contourner en ajoutant un '?' à la fin de l'url.

Owner

tontof commented Jun 2, 2017

Est-ce que tu peux essayer d'ajouter un '?view=expanded' ou '?view=list' à la fin de l'url quand tu accèdes à la page principale avant de te connecter. J'avais un soucis avec un proxy et une instance shaarli que j'arrivais à contourner en ajoutant un '?' à la fin de l'url.

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

J'applique le ?view=expanded ou ?view=list , je constate le changement par apport à l'url sans le paramètre donc ok pour ça.
Mais lorsque je me connecte toujours bad token...

Mes connaissances en programmation date de l'époque de scolaire, je vais donc proposer et non pouvoir résoudre :'( ... tu as utiliser un mécanisme de protection de vol de session sur un fingerprint spécifique qui ferait qu'au niveau de la transition des paquets j'ai une perte ce qui suggèrerais un vol de session ?

De toute facon c'est au boulot que ça coince... quelque chose doit être mal configuré... J'ai essayé une session sur TOR lol... mais ça n'a pas résolu le problème (qui ne tente rien n'a rien)...

Draleg commented Jun 2, 2017

J'applique le ?view=expanded ou ?view=list , je constate le changement par apport à l'url sans le paramètre donc ok pour ça.
Mais lorsque je me connecte toujours bad token...

Mes connaissances en programmation date de l'époque de scolaire, je vais donc proposer et non pouvoir résoudre :'( ... tu as utiliser un mécanisme de protection de vol de session sur un fingerprint spécifique qui ferait qu'au niveau de la transition des paquets j'ai une perte ce qui suggèrerais un vol de session ?

De toute facon c'est au boulot que ça coince... quelque chose doit être mal configuré... J'ai essayé une session sur TOR lol... mais ça n'a pas résolu le problème (qui ne tente rien n'a rien)...

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Il y a effectivement une option pour le vol de session. Il faut modifier le fichier data/config.php
à la fin, il devrait y avoir

$this->disableSessionProtection = '0';

à remplacer par

$this->disableSessionProtection = '1';
Owner

tontof commented Jun 2, 2017

Il y a effectivement une option pour le vol de session. Il faut modifier le fichier data/config.php
à la fin, il devrait y avoir

$this->disableSessionProtection = '0';

à remplacer par

$this->disableSessionProtection = '1';
@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Je vais voir ça, mais ça m'ennuie de désactiver une protection :'( ...
Au delà de ça me serait-il possible via le serveur même en ssh de lancer une commande qui lance un all-update ou de créer une page qui génère la requête ?

Draleg commented Jun 2, 2017

Je vais voir ça, mais ça m'ennuie de désactiver une protection :'( ...
Au delà de ça me serait-il possible via le serveur même en ssh de lancer une commande qui lance un all-update ou de créer une page qui génère la requête ?

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Oui bien sûr, mais il te faut pouvoir accéder à ta page de configuration pour avoir le hash qui te permettra de mettre à jour par une url, du style
https://url/kriss_feed/?update&cron=123456789abcdef

Tu peux juste essayer de désactiver temporairement l'option pour voir si ça vient effectivement de ça ?

Owner

tontof commented Jun 2, 2017

Oui bien sûr, mais il te faut pouvoir accéder à ta page de configuration pour avoir le hash qui te permettra de mettre à jour par une url, du style
https://url/kriss_feed/?update&cron=123456789abcdef

Tu peux juste essayer de désactiver temporairement l'option pour voir si ça vient effectivement de ça ?

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Bien sur c'est ce que je faisais ;-).

Mais pas de changement ...

Draleg commented Jun 2, 2017

Bien sur c'est ce que je faisais ;-).

Mais pas de changement ...

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Alors la je sèche... en 3G même erreur ...
J'ai alors cru à la redirection no-ip... Je suis passé directement via l'ip mais même erreur.
La seule nuance qui reste c'est ma redirection de port qui n'est présente qu'à partir d'une connexion externe...

Draleg commented Jun 2, 2017

Alors la je sèche... en 3G même erreur ...
J'ai alors cru à la redirection no-ip... Je suis passé directement via l'ip mais même erreur.
La seule nuance qui reste c'est ma redirection de port qui n'est présente qu'à partir d'une connexion externe...

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

L'idée du hash me tente bien mais vu que je n'ai pas accès, ce dernier est-il dans le fichier data/config.php ? car la j'en vois deux.

Draleg commented Jun 2, 2017

L'idée du hash me tente bien mais vu que je n'ai pas accès, ce dernier est-il dans le fichier data/config.php ? car la j'en vois deux.

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Bon tout est contourné par une connexion SSH sur mon serveur, une petite navigation via lynx et un chargement des flux lolll...

Draleg commented Jun 2, 2017

Bon tout est contourné par une connexion SSH sur mon serveur, une petite navigation via lynx et un chargement des flux lolll...

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Est-ce que tout fonctionne avec pluxml/shaarli de la même façon redirection/port ?
Pour le hash, c'est un sha1 de la concaténation des 2 hash de config.

sha1($salt.$hash)
Owner

tontof commented Jun 2, 2017

Est-ce que tout fonctionne avec pluxml/shaarli de la même façon redirection/port ?
Pour le hash, c'est un sha1 de la concaténation des 2 hash de config.

sha1($salt.$hash)
@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Et si dans le fichier index.php tu modifies la fonction getUrl

public static function getUrl() {
  return "url + port";
...
}
Owner

tontof commented Jun 2, 2017

Et si dans le fichier index.php tu modifies la fonction getUrl

public static function getUrl() {
  return "url + port";
...
}
@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Je teste ça ;-)

Draleg commented Jun 2, 2017

Je teste ça ;-)

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

D'ailleurs tu dois pouvoir le vérifier facilement en regardant le code source du code html

<base href="...">
Owner

tontof commented Jun 2, 2017

D'ailleurs tu dois pouvoir le vérifier facilement en regardant le code source du code html

<base href="...">

@tontof tontof closed this Jun 2, 2017

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Oups mauvaise manip

Owner

tontof commented Jun 2, 2017

Oups mauvaise manip

@tontof tontof reopened this Jun 2, 2017

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Alors je trouve bien la fonction public

static function getUrl() {

Tu as plusieurs initialisations de variables dedans, j'enlève le tout pour mettre tel que tu le propose ?

Draleg commented Jun 2, 2017

Alors je trouve bien la fonction public

static function getUrl() {

Tu as plusieurs initialisations de variables dedans, j'enlève le tout pour mettre tel que tu le propose ?

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

non tu laisses tout, juste tu ajoutes le return au tout début de la fonction pour qu'elle retourne la bonne url (si jamais ça vient de ça)

Owner

tontof commented Jun 2, 2017

non tu laisses tout, juste tu ajoutes le return au tout début de la fonction pour qu'elle retourne la bonne url (si jamais ça vient de ça)

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Je n'avais pas vu le post de vérification
<base href="
Je confirme que l'url et port sont ok, sans toucher à la fonction.

Draleg commented Jun 2, 2017

Je n'avais pas vu le post de vérification
<base href="
Je confirme que l'url et port sont ok, sans toucher à la fonction.

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

le http(s) aussi ? parce que sur ce post #241 ça semblait venir de là. D'ailleurs le problème avait été résolu en ajoutant

$GLOBALS['BASE_URL'] = 'http://yoururl/kriss/feed/path';

dans un fichier de plugin

Owner

tontof commented Jun 2, 2017

le http(s) aussi ? parce que sur ce post #241 ça semblait venir de là. D'ailleurs le problème avait été résolu en ajoutant

$GLOBALS['BASE_URL'] = 'http://yoururl/kriss/feed/path';

dans un fichier de plugin

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Alors première modification proposée du
public static function getUrl() { return "http://yoururl/kriss/feed/path:port" ... }
Je test, page blanche alors que l'url et le port sont bon.
Par curiosité, je test l'autre option en l'initialisant à la place du return donc
public static function getUrl() { $GLOBALS['BASE_URL'] = 'http://yoururl/kriss/feed/path:port'; ... }
La je n'ai plus le message bad token mais je retombe sur la page de login (sans être loguer j'ai vérifier en retournant à la racine).

Draleg commented Jun 2, 2017

Alors première modification proposée du
public static function getUrl() { return "http://yoururl/kriss/feed/path:port" ... }
Je test, page blanche alors que l'url et le port sont bon.
Par curiosité, je test l'autre option en l'initialisant à la place du return donc
public static function getUrl() { $GLOBALS['BASE_URL'] = 'http://yoururl/kriss/feed/path:port'; ... }
La je n'ai plus le message bad token mais je retombe sur la page de login (sans être loguer j'ai vérifier en retournant à la racine).

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

oups pour le premier test, c'est peut-être parce qu'il manquait le ';' à la fin de la ligne (je l'avais oublié)
pour le 2è normalement cette ligne il faut la mettre en haut du fichier index.php pas dans la fonction getUrl (mais normalement ça devrait marcher aussi dans la fonction)

Owner

tontof commented Jun 2, 2017

oups pour le premier test, c'est peut-être parce qu'il manquait le ';' à la fin de la ligne (je l'avais oublié)
pour le 2è normalement cette ligne il faut la mettre en haut du fichier index.php pas dans la fonction getUrl (mais normalement ça devrait marcher aussi dans la fonction)

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Honte à moi... j'ai refait ce premier test
public static function getUrl() { return "http://yoururl/kriss/feed/path:port"; ... }
Bad token.

Pour le second test si c'est comme je m'en souviens une variable globale si je la modifie la logiquement ça portée est bonne... mais si utilisée avant cette fonction alors ça posera problème.

Draleg commented Jun 2, 2017

Honte à moi... j'ai refait ce premier test
public static function getUrl() { return "http://yoururl/kriss/feed/path:port"; ... }
Bad token.

Pour le second test si c'est comme je m'en souviens une variable globale si je la modifie la logiquement ça portée est bonne... mais si utilisée avant cette fonction alors ça posera problème.

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Pour contourner le problème au travail je me suis fait un raccourcis:
?update&cron=123456789abcdef
et un autre
?read=all&cron=123456789abcdef

Les deux ont été.

Draleg commented Jun 2, 2017

Pour contourner le problème au travail je me suis fait un raccourcis:
?update&cron=123456789abcdef
et un autre
?read=all&cron=123456789abcdef

Les deux ont été.

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Euh ? mais du coup tu les lis comment ?
C'est vraiment bizarre, il faudrait pouvoir approfondir en affichant des var_dump($_SERVER) et var_dump($_SESSION) parce que là je ne comprends pas trop pourquoi il perd les tokens.
Tu n'as pas vu d'erreurs dans les logs PHP ?

Owner

tontof commented Jun 2, 2017

Euh ? mais du coup tu les lis comment ?
C'est vraiment bizarre, il faudrait pouvoir approfondir en affichant des var_dump($_SERVER) et var_dump($_SESSION) parce que là je ne comprends pas trop pourquoi il perd les tokens.
Tu n'as pas vu d'erreurs dans les logs PHP ?

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Non justement aucune erreur...
J'ai même parsé par acquis de conscience tout le /var/log avec un grep et en string kriss,feed,token (c'est aller à la pêche mais bon...) aucun résultat sauf des get 200 dans l'acces_log ...
Moi pas de problème pour ces deux affichage mais je dois le faire sur une session en cours je rajoute ça à la fin d'index.php peut-être ?

Draleg commented Jun 2, 2017

Non justement aucune erreur...
J'ai même parsé par acquis de conscience tout le /var/log avec un grep et en string kriss,feed,token (c'est aller à la pêche mais bon...) aucun résultat sauf des get 200 dans l'acces_log ...
Moi pas de problème pour ces deux affichage mais je dois le faire sur une session en cours je rajoute ça à la fin d'index.php peut-être ?

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Maintenant je pense savoir où est le problème...
Il faut savoir que mon port_forwarding renvois d'un port X venant de l'extérieure vers un port Y dans mon réseau local.
C'est juste pour moi une forme de sécurité que le port ouvert ne soit pas le port direct d'écoute dans mon LAN.
A mon avis c'est la que ça pose problème.

Draleg commented Jun 2, 2017

Maintenant je pense savoir où est le problème...
Il faut savoir que mon port_forwarding renvois d'un port X venant de l'extérieure vers un port Y dans mon réseau local.
C'est juste pour moi une forme de sécurité que le port ouvert ne soit pas le port direct d'écoute dans mon LAN.
A mon avis c'est la que ça pose problème.

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Dans un premier temps si tu ajoutes après session_start();

                      var_dump($_SESSION);
                      var_dump(session_id());

normalement tu devrais voir les tokens s'ajouter à chaque fois que tu actualises la page
Il faut vérifier que le session_id() ne change pas.

De mon côté, ça donne quelque chose comme

array(7) {
  ["view"]=>
  string(8) "expanded"
  ["listFeeds"]=>
  string(4) "show"
  ["filter"]=>
  string(6) "unread"
  ["order"]=>
  string(10) "olderFirst"
  ["byPage"]=>
  string(1) "1"
  ["lang"]=>
  string(5) "en_US"
  ["tokens"]=>
  array(3) {
    int(1)
    ["8c47440faa2ae0588a620..."]=>
    int(1)
    ["95175f85a821b18a81698..."]=>
    int(1)
    ["9a13d77244aa3e58a11cf..."]=>
    int(1)
  }
}
string(32) "dc4eeb4d4e..."

Les sessions sont normalement gérées par PHP du coup, ce n'est pas sensé être grave que tu rediriges sur un autre port ?

Owner

tontof commented Jun 2, 2017

Dans un premier temps si tu ajoutes après session_start();

                      var_dump($_SESSION);
                      var_dump(session_id());

normalement tu devrais voir les tokens s'ajouter à chaque fois que tu actualises la page
Il faut vérifier que le session_id() ne change pas.

De mon côté, ça donne quelque chose comme

array(7) {
  ["view"]=>
  string(8) "expanded"
  ["listFeeds"]=>
  string(4) "show"
  ["filter"]=>
  string(6) "unread"
  ["order"]=>
  string(10) "olderFirst"
  ["byPage"]=>
  string(1) "1"
  ["lang"]=>
  string(5) "en_US"
  ["tokens"]=>
  array(3) {
    int(1)
    ["8c47440faa2ae0588a620..."]=>
    int(1)
    ["95175f85a821b18a81698..."]=>
    int(1)
    ["9a13d77244aa3e58a11cf..."]=>
    int(1)
  }
}
string(32) "dc4eeb4d4e..."

Les sessions sont normalement gérées par PHP du coup, ce n'est pas sensé être grave que tu rediriges sur un autre port ?

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Logiquement non jsutement vu que c'est côté serveur, je n'ai jamais eu de problème avec le pluxml, le shaarli et avant le wordpress.
Je fais le test.

Draleg commented Jun 2, 2017

Logiquement non jsutement vu que c'est côté serveur, je n'ai jamais eu de problème avec le pluxml, le shaarli et avant le wordpress.
Je fais le test.

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

J'ai bien ajouté les deux lignes juste en dessous du session start.
public static function init() ... session_start(); var_dump($_SESSION); var_dump(session_id()); ...
Hors je n'a pas d'ajout mais une ligne qui change à chaque fois pour chaque actualisation sur la même page.
Ici un exemple lors d'une tentative de connexion:

  • Arrivée sur l'index l'url avant login:
    array(0) { } string(26) "m1flh87d77hq7dd..."
  • Cliquer sur login:
    array(0) { } string(26) "9ebh99rg50o9ah8..."
  • Entrer mes identifiants et générer la demande:
    array(0) { } string(26) "nub8ness6du4fum..."

Oui je réagis tardivement sur ta question:

Euh ? mais du coup tu les lis comment ?

Je suis en mode d'usage hybride je n'ai plus le terme en tête... Le contenu est visible mais la modification n'est pas autorisée.

Draleg commented Jun 2, 2017

J'ai bien ajouté les deux lignes juste en dessous du session start.
public static function init() ... session_start(); var_dump($_SESSION); var_dump(session_id()); ...
Hors je n'a pas d'ajout mais une ligne qui change à chaque fois pour chaque actualisation sur la même page.
Ici un exemple lors d'une tentative de connexion:

  • Arrivée sur l'index l'url avant login:
    array(0) { } string(26) "m1flh87d77hq7dd..."
  • Cliquer sur login:
    array(0) { } string(26) "9ebh99rg50o9ah8..."
  • Entrer mes identifiants et générer la demande:
    array(0) { } string(26) "nub8ness6du4fum..."

Oui je réagis tardivement sur ta question:

Euh ? mais du coup tu les lis comment ?

Je suis en mode d'usage hybride je n'ai plus le terme en tête... Le contenu est visible mais la modification n'est pas autorisée.

@Draleg Draleg changed the title from Jeton de sécurité invalide - Wrong token [RESOLU] to Jeton de sécurité invalide - Wrong token [+/-RESOLU] Jun 2, 2017

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Bon ben on est sûr que c'est bien la session php qui ne fonctionne pas correctement...

Si tu ajoutes un session_start() au tout début du fichier index.php
à la 2è ligne, juste après <?php

Owner

tontof commented Jun 2, 2017

Bon ben on est sûr que c'est bien la session php qui ne fonctionne pas correctement...

Si tu ajoutes un session_start() au tout début du fichier index.php
à la 2è ligne, juste après <?php

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Si je met le session_start(); au début de fichier index.php, résultat avec les deux fonctions:
array(6) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" } string(26) "8h5imm6drup27j...."
Après actualisation l'id reste le même.

Je décide donc de me loguer... je rentre les bons identifiants et la retour à la page principale avec ceci:
array(0) { } string(26) "8h5imm6drup27...."
Mais je ne suis pas logué ...

Draleg commented Jun 2, 2017

Si je met le session_start(); au début de fichier index.php, résultat avec les deux fonctions:
array(6) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" } string(26) "8h5imm6drup27j...."
Après actualisation l'id reste le même.

Je décide donc de me loguer... je rentre les bons identifiants et la retour à la page principale avec ceci:
array(0) { } string(26) "8h5imm6drup27...."
Mais je ne suis pas logué ...

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Quand tu actualises tu n'as pas de variables tokens dans ton affichage qui apparaît ?
(tu as bien réinitialisé entre chaque test que tu as fait ?)

Owner

tontof commented Jun 2, 2017

Quand tu actualises tu n'as pas de variables tokens dans ton affichage qui apparaît ?
(tu as bien réinitialisé entre chaque test que tu as fait ?)

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Quand tu actualises tu n'as pas de variables tokens dans ton affichage qui apparaît ?

Je précise que les deux fonctions de dump sont ajoutées en dessous du premier sessions_start() que j'ai ajouté.
Non je n'ai pas de variables tokens.

(tu as bien réinitialisé entre chaque test que tu as fait ?)

Réinitialisé ? j'ai actualisé la page ça oui, veux-tu dire autre chose par réinitialisé?

Draleg commented Jun 2, 2017

Quand tu actualises tu n'as pas de variables tokens dans ton affichage qui apparaît ?

Je précise que les deux fonctions de dump sont ajoutées en dessous du premier sessions_start() que j'ai ajouté.
Non je n'ai pas de variables tokens.

(tu as bien réinitialisé entre chaque test que tu as fait ?)

Réinitialisé ? j'ai actualisé la page ça oui, veux-tu dire autre chose par réinitialisé?

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Je voulais dire dans le fichier index.php quand tu faisais des tests tu reviens bien comme au début à chaque fois ?

Owner

tontof commented Jun 2, 2017

Je voulais dire dans le fichier index.php quand tu faisais des tests tu reviens bien comme au début à chaque fois ?

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Euh c'est quoi pour toi la différence entre Page principale et Page de login ?

C'est la meme page index.php c'est juste que je passe sur la génération du formulaire de login via ?login.
Ma formulation peut effectivement prêter à confusion.

Je repasse a "0" le vol de session.
Je retire le $secure.
Je vais sur la page principale(index.php):
array(6) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" } string(26) "8h5imm6drup27j166hn..."

Clic sur login(index.php?login):
array(6) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" } string(26) "8h5imm6drup27j166hnko...."

Tentative de login, retour sur l'affichage principale(index.php) mais je ne suis pas logué.
array(0) { } string(26) "8h5imm6drup27j166hn...."

Draleg commented Jun 2, 2017

Euh c'est quoi pour toi la différence entre Page principale et Page de login ?

C'est la meme page index.php c'est juste que je passe sur la génération du formulaire de login via ?login.
Ma formulation peut effectivement prêter à confusion.

Je repasse a "0" le vol de session.
Je retire le $secure.
Je vais sur la page principale(index.php):
array(6) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" } string(26) "8h5imm6drup27j166hn..."

Clic sur login(index.php?login):
array(6) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" } string(26) "8h5imm6drup27j166hnko...."

Tentative de login, retour sur l'affichage principale(index.php) mais je ne suis pas logué.
array(0) { } string(26) "8h5imm6drup27j166hn...."

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Même résultat sur le même test mais en ayant désactiver le vol de session.

Draleg commented Jun 2, 2017

Même résultat sur le même test mais en ayant désactiver le vol de session.

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Oh punaise, je viens de comprendre que tu utilisais KrISS feed en mode protected ou public et pas private !
Je n'avais pas eu de réponse à « Euh ? mais du coup tu les lis comment ? » c'est pour ça que je ne comprenais pas.
#385 (comment)

Tu as moyen simple de me donner un accès pour que je fasse des tests, parce que par messages interposés c'est pas évident ?

Il faudrait ajouter des var_dump un peu partout pour essayer de comprendre...

Owner

tontof commented Jun 2, 2017

Oh punaise, je viens de comprendre que tu utilisais KrISS feed en mode protected ou public et pas private !
Je n'avais pas eu de réponse à « Euh ? mais du coup tu les lis comment ? » c'est pour ça que je ne comprenais pas.
#385 (comment)

Tu as moyen simple de me donner un accès pour que je fasse des tests, parce que par messages interposés c'est pas évident ?

Il faudrait ajouter des var_dump un peu partout pour essayer de comprendre...

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Oh punaise, je viens de comprendre que tu utilisais KrISS feed en mode protected ou public et pas private !

J'ai bien répondu tardivement mais entre plusieurs réponses #385 (comment) ;-) (j'ai d'ailleurs du faire une recherche par texte pour retrouver ma réponse lol).

Pour l'accès malheureusement non ce n'est pas possible... c'est de l'auto-hébergement que je ne diffuse pas sur le net... rien de bien secret juste que j'aime ma tranquillité et avoir accès à ce que je veux tout le temps :-p .
Mais je comprends totalement que par flux interposés c'est vraiment compliqué.

Vu que de l'intérieur de mon réseau tout fonctionne (même sous Lynx c'est pour dire!!)
Je présume vraiment que cette perte de session provient du port forwarding qui est la seule nuance qui reste présente entre ma connexion 3G et ma connexion/proxy du boulot.
Car j'ai exclu la redirection DNS en pointant directement sur l'IP...

Draleg commented Jun 2, 2017

Oh punaise, je viens de comprendre que tu utilisais KrISS feed en mode protected ou public et pas private !

J'ai bien répondu tardivement mais entre plusieurs réponses #385 (comment) ;-) (j'ai d'ailleurs du faire une recherche par texte pour retrouver ma réponse lol).

Pour l'accès malheureusement non ce n'est pas possible... c'est de l'auto-hébergement que je ne diffuse pas sur le net... rien de bien secret juste que j'aime ma tranquillité et avoir accès à ce que je veux tout le temps :-p .
Mais je comprends totalement que par flux interposés c'est vraiment compliqué.

Vu que de l'intérieur de mon réseau tout fonctionne (même sous Lynx c'est pour dire!!)
Je présume vraiment que cette perte de session provient du port forwarding qui est la seule nuance qui reste présente entre ma connexion 3G et ma connexion/proxy du boulot.
Car j'ai exclu la redirection DNS en pointant directement sur l'IP...

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Ah oui effectivement, mais comme la réponse était directement à la suite de la citation, ça apparaissait tout en gris et je n'avais pas fait attention.

Bref, je comprends pour l'accès, c'est logique. Mais du coup, je vais préparer un fichier test index.php avec différents affichages pour voir s'il y a moyen de comprendre plus rapidement.

Owner

tontof commented Jun 2, 2017

Ah oui effectivement, mais comme la réponse était directement à la suite de la citation, ça apparaissait tout en gris et je n'avais pas fait attention.

Bref, je comprends pour l'accès, c'est logique. Mais du coup, je vais préparer un fichier test index.php avec différents affichages pour voir s'il y a moyen de comprendre plus rapidement.

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Pendant que j'étais en train de préparer le fichier index test je suis tombé sur ça
http://php.net/manual/en/function.session-regenerate-id.php
Du coup tu peux essayer de mettre en commentaire la ligne

session_regenerate_id(true);
//session_regenerate_id(true);
Owner

tontof commented Jun 2, 2017

Pendant que j'étais en train de préparer le fichier index test je suis tombé sur ça
http://php.net/manual/en/function.session-regenerate-id.php
Du coup tu peux essayer de mettre en commentaire la ligne

session_regenerate_id(true);
//session_regenerate_id(true);
@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Et puis pour un autre test si le précédent n'est pas concluant

session_set_cookie_params($lifetime, $path, $domain, $secure);
//session_set_cookie_params($lifetime, $path, $domain, $secure);

Parce qu'effectivement ça peut poser problème en fonction de l'ordre des appels
http://php.net/manual/en/function.session-set-cookie-params.php

Owner

tontof commented Jun 2, 2017

Et puis pour un autre test si le précédent n'est pas concluant

session_set_cookie_params($lifetime, $path, $domain, $secure);
//session_set_cookie_params($lifetime, $path, $domain, $secure);

Parce qu'effectivement ça peut poser problème en fonction de l'ordre des appels
http://php.net/manual/en/function.session-set-cookie-params.php

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Moon github n'a pas affiché les notitications...
Désolé du délais!!

Alors je reprends, je laisse le start_session du début, je laisse les deux fonctions de dump.
Dans un premier temps je commente le session_regenerate_id et je fais les mêmes tests que tout à l'heure.

Si négatif, je retest sans le regeneration d'id mais en commentant session_set_cookie_params, au boulot!

(Pour le moment j'ai contourné le problème en générant des taches cron qui lance un script avec lynx qui regénère le flux tout les X temps et qui va le vider tout les jours à 00h... car me taper une veille de plusieurs jours c'est moyen de toute facon...)

Draleg commented Jun 2, 2017

Moon github n'a pas affiché les notitications...
Désolé du délais!!

Alors je reprends, je laisse le start_session du début, je laisse les deux fonctions de dump.
Dans un premier temps je commente le session_regenerate_id et je fais les mêmes tests que tout à l'heure.

Si négatif, je retest sans le regeneration d'id mais en commentant session_set_cookie_params, au boulot!

(Pour le moment j'ai contourné le problème en générant des taches cron qui lance un script avec lynx qui regénère le flux tout les X temps et qui va le vider tout les jours à 00h... car me taper une veille de plusieurs jours c'est moyen de toute facon...)

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

oui je pense qu'on s'est compris.

L'affichage des var_dump n'est peut-être plus utile comme on sait maintenant qu'en mettant le session_start au début, la session semble fonctionner...

Owner

tontof commented Jun 2, 2017

oui je pense qu'on s'est compris.

L'affichage des var_dump n'est peut-être plus utile comme on sait maintenant qu'en mettant le session_start au début, la session semble fonctionner...

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

[CORRECTION]Premier test sur base de:
////session_regenerate_id(true);

Résultat:
index.php
array(6) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" } string(26) "8h5imm6drup27j166hnko..."

index.php?login
array(6) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" } string(26) "8h5imm6drup27j166hnko..."

Après login:
array(10) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" ["uid"]=> string(40) "60bfa51db110fa286253f9225d42c127f5..." ["ip"]=> string(13) "X.X.X.X" ["username"]=> string(7) "bunseki" ["expires_on"]=> int(1496404212) } string(26) "8h5imm6drup27j166hnk..."

ET JE SUIS LOGUER !!!!

Dois-je faire l'autre test ? Cela t'oriente ?

Draleg commented Jun 2, 2017

[CORRECTION]Premier test sur base de:
////session_regenerate_id(true);

Résultat:
index.php
array(6) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" } string(26) "8h5imm6drup27j166hnko..."

index.php?login
array(6) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" } string(26) "8h5imm6drup27j166hnko..."

Après login:
array(10) { ["view"]=> string(4) "list" ["listFeeds"]=> string(4) "show" ["filter"]=> string(6) "unread" ["order"]=> string(10) "newerFirst" ["byPage"]=> int(10) ["lang"]=> string(5) "en_US" ["uid"]=> string(40) "60bfa51db110fa286253f9225d42c127f5..." ["ip"]=> string(13) "X.X.X.X" ["username"]=> string(7) "bunseki" ["expires_on"]=> int(1496404212) } string(26) "8h5imm6drup27j166hnk..."

ET JE SUIS LOGUER !!!!

Dois-je faire l'autre test ? Cela t'oriente ?

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

donc si tu remets ton index.php d'origine avec juste
//session_set_cookie_params($lifetime, $path, $domain, $secure);
ça marche ou pas ?

Owner

tontof commented Jun 2, 2017

donc si tu remets ton index.php d'origine avec juste
//session_set_cookie_params($lifetime, $path, $domain, $secure);
ça marche ou pas ?

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Oh punaise est-ce que ça pourrait lié à ça: http://php.net/manual/en/function.setcookie.php#36202
fait un var_dump($domain); juste avant cette ligne session_set_cookie_params($lifetime, $path, $domain, $secure); pour voir si le port est affiché !

Owner

tontof commented Jun 2, 2017

Oh punaise est-ce que ça pourrait lié à ça: http://php.net/manual/en/function.setcookie.php#36202
fait un var_dump($domain); juste avant cette ligne session_set_cookie_params($lifetime, $path, $domain, $secure); pour voir si le port est affiché !

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Excuse moi j'étais à l'extérieure... non lorsque j'ai posté je me suis rendu compte que j'avais mis le mauvais test, juste avant de sortir j'avais modifié mais je présume que tu répondais en // .

Donc c'est sur le test //session_regenerate_id(true); que tout a fonctionné.
Tout est par défaut sauf le start_session au début, les fonctions de dump.
Tout le reste a été remis "d'origine" avant d'être effectué.

Je peux tester en enlevant le start_session et dump à la limite...

Draleg commented Jun 2, 2017

Excuse moi j'étais à l'extérieure... non lorsque j'ai posté je me suis rendu compte que j'avais mis le mauvais test, juste avant de sortir j'avais modifié mais je présume que tu répondais en // .

Donc c'est sur le test //session_regenerate_id(true); que tout a fonctionné.
Tout est par défaut sauf le start_session au début, les fonctions de dump.
Tout le reste a été remis "d'origine" avant d'être effectué.

Je peux tester en enlevant le start_session et dump à la limite...

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

ben le dump n'influcence pas mais si tu vires le session_start du début ça marche aussi ?

Owner

tontof commented Jun 2, 2017

ben le dump n'influcence pas mais si tu vires le session_start du début ça marche aussi ?

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Oui je me doute, mais au cas ou tu aurais voulu le résultat du dump sur ce test.
Alors les dump commentés, le sessions_start() commenté, cela ne fonctionne plus.

Avec le session_start() au début, cela refonctionne.

Draleg commented Jun 2, 2017

Oui je me doute, mais au cas ou tu aurais voulu le résultat du dump sur ce test.
Alors les dump commentés, le sessions_start() commenté, cela ne fonctionne plus.

Avec le session_start() au début, cela refonctionne.

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

J'ai lu la partie concernant l'usage multiple de port dans le PHP manuel, c'est clair que ça ressemble au problème...

Draleg commented Jun 2, 2017

J'ai lu la partie concernant l'usage multiple de port dans le PHP manuel, c'est clair que ça ressemble au problème...

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Et sans le session_start du début mais avec session_regenerate_id(false); plutôt que true (après avoir décommenté)

Owner

tontof commented Jun 2, 2017

Et sans le session_start du début mais avec session_regenerate_id(false); plutôt que true (après avoir décommenté)

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Par contre je suis curieux de savoir pour le domain le #385 (comment)
Si le port est présent, c'est à supprimer.
Sachant que tu as peut-être 2 problèmes différents liés et que si ça ne marche pas c'est peut-être à cause d'un des 2 problèmes et que c'est du coup c'est plus difficile à gérer.

Owner

tontof commented Jun 2, 2017

Par contre je suis curieux de savoir pour le domain le #385 (comment)
Si le port est présent, c'est à supprimer.
Sachant que tu as peut-être 2 problèmes différents liés et que si ça ne marche pas c'est peut-être à cause d'un des 2 problèmes et que c'est du coup c'est plus difficile à gérer.

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Et sans le session_start du début mais avec session_regenerate_id(false); plutôt que true (après avoir décommenté)

Résultat: Bad Token
Retour sur index.php, non connecté

Avec le session_start non commenté, sans relancer la procédure d'identification, juste un F5, je suis loguer... o_O'

Draleg commented Jun 2, 2017

Et sans le session_start du début mais avec session_regenerate_id(false); plutôt que true (après avoir décommenté)

Résultat: Bad Token
Retour sur index.php, non connecté

Avec le session_start non commenté, sans relancer la procédure d'identification, juste un F5, je suis loguer... o_O'

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Ouais mais justement le false, ne supprime pas les infos de l'ancienne session, c'est sûrement pour ça que ça te reconnecte automatiquement.
Et puis en fait avec tes tests, tu manipules 2 sessions différentes.
Le session_start du début gère un cookie PHPSESSID
alors que sans
le cookie s'appelle kriss

Owner

tontof commented Jun 2, 2017

Ouais mais justement le false, ne supprime pas les infos de l'ancienne session, c'est sûrement pour ça que ça te reconnecte automatiquement.
Et puis en fait avec tes tests, tu manipules 2 sessions différentes.
Le session_start du début gère un cookie PHPSESSID
alors que sans
le cookie s'appelle kriss

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Oh punaise est-ce que ça pourrait lié à ça: http://php.net/manual/en/function.setcookie.php#36202
fait un var_dump($domain); juste avant cette ligne session_set_cookie_params($lifetime, $path, $domain, $secure); pour voir si le port est affiché !

Alors en laissant le session_start, le session_regenerate_id(false), le résultat du var_dump($domain); est:
string(20) "IP:PORT"

Draleg commented Jun 2, 2017

Oh punaise est-ce que ça pourrait lié à ça: http://php.net/manual/en/function.setcookie.php#36202
fait un var_dump($domain); juste avant cette ligne session_set_cookie_params($lifetime, $path, $domain, $secure); pour voir si le port est affiché !

Alors en laissant le session_start, le session_regenerate_id(false), le résultat du var_dump($domain); est:
string(20) "IP:PORT"

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

OK donc déjà là c'est faux !
Première erreur...

Owner

tontof commented Jun 2, 2017

OK donc déjà là c'est faux !
Première erreur...

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Est-ce que tu peux vérifier dans ton navigateur le cookie PHPSESSID pour voir si le domaine est associé et si y a le port avec ?

Owner

tontof commented Jun 2, 2017

Est-ce que tu peux vérifier dans ton navigateur le cookie PHPSESSID pour voir si le domaine est associé et si y a le port avec ?

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Le domaine est associé mais je n'ai pas le port.

Draleg commented Jun 2, 2017

Le domaine est associé mais je n'ai pas le port.

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Youpi !!!

Owner

tontof commented Jun 2, 2017

Youpi !!!

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

J'aimerai pouvoir me réjouir mais je ne suis pas... , tu peux m'expliquer histoire que ce soir j'aille dormir plus intelligent :-p ?

Draleg commented Jun 2, 2017

J'aimerai pouvoir me réjouir mais je ne suis pas... , tu peux m'expliquer histoire que ce soir j'aille dormir plus intelligent :-p ?

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Est-ce que juste avant session_set_cookie_params($lifetime, $path, $domain, $secure);
tu peux mettre

$domain = parse_url($domain, PHP_URL_HOST);
session_set_cookie_params($lifetime, $path, $domain, $secure);
Owner

tontof commented Jun 2, 2017

Est-ce que juste avant session_set_cookie_params($lifetime, $path, $domain, $secure);
tu peux mettre

$domain = parse_url($domain, PHP_URL_HOST);
session_set_cookie_params($lifetime, $path, $domain, $secure);
@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

et retester avec et sans le session_start du début !

Owner

tontof commented Jun 2, 2017

et retester avec et sans le session_start du début !

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Sans le session_start et sans le regenerate_id a false ?

Draleg commented Jun 2, 2017

Sans le session_start et sans le regenerate_id a false ?

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Euh ouais avec le regenerate_id à true

Owner

tontof commented Jun 2, 2017

Euh ouais avec le regenerate_id à true

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

De ce que je comprends et d'après
http://php.net/manual/en/function.setcookie.php#36202
Il ne faut pas indiquer le port dans le cookie.
Sauf qu'actuellement sur KrISS feed ça utilisait $_SERVER['HTTP_HOST'] qui intègre le port.

Du coup je pense qu'on a effectivement trouvé un premier bug !
Bon après je me suis peut-être réjoui un peu trop vite car tout n'est pas terminé.
Mais je pense que c'est une vraie erreur

Owner

tontof commented Jun 2, 2017

De ce que je comprends et d'après
http://php.net/manual/en/function.setcookie.php#36202
Il ne faut pas indiquer le port dans le cookie.
Sauf qu'actuellement sur KrISS feed ça utilisait $_SERVER['HTTP_HOST'] qui intègre le port.

Du coup je pense qu'on a effectivement trouvé un premier bug !
Bon après je me suis peut-être réjoui un peu trop vite car tout n'est pas terminé.
Mais je pense que c'est une vraie erreur

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Alors on y va:
var_dump($domain);
--> effacé
$domain = parse_url($domain, PHP_URL_HOST); session_set_cookie_params($lifetime, $path, $domain, $secure);
--> fait

//session_start();
--> il est commenté

session_regenerate_id(true);
--> remis a true

Donc en toute théorie, le fichier est comme par défaut sauf que tu as parsé le domaine pour exclure le port si j'ai bien suivi.

CA FONCTIONNE! (testé 2 fois et vérifié 2 fois en espérant ne rien avoir oublié).

Draleg commented Jun 2, 2017

Alors on y va:
var_dump($domain);
--> effacé
$domain = parse_url($domain, PHP_URL_HOST); session_set_cookie_params($lifetime, $path, $domain, $secure);
--> fait

//session_start();
--> il est commenté

session_regenerate_id(true);
--> remis a true

Donc en toute théorie, le fichier est comme par défaut sauf que tu as parsé le domaine pour exclure le port si j'ai bien suivi.

CA FONCTIONNE! (testé 2 fois et vérifié 2 fois en espérant ne rien avoir oublié).

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

Wow la bonne nouvelle... Bon je m'étais trompé, je pensais qu'il y avait 2 erreurs, mais il n'y en avait qu'une seule !
Merci bien pour les tests qui ont pu mettre en évidence ce bug !

Owner

tontof commented Jun 2, 2017

Wow la bonne nouvelle... Bon je m'étais trompé, je pensais qu'il y avait 2 erreurs, mais il n'y en avait qu'une seule !
Merci bien pour les tests qui ont pu mettre en évidence ce bug !

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

Merci à toi pour le temps passé a résoudre mon problème, c'est ça qui est bien dans le débugging, au final c'est un happy end des deux cotés :-) .

Draleg commented Jun 2, 2017

Merci à toi pour le temps passé a résoudre mon problème, c'est ça qui est bien dans le débugging, au final c'est un happy end des deux cotés :-) .

tontof added a commit that referenced this issue Jun 2, 2017

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof
Owner

tontof commented Jun 2, 2017

@tontof tontof closed this Jun 2, 2017

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

En prime j'ai sorti une nouvelle version 8.7 bien mérité après cette longue bataille.

Owner

tontof commented Jun 2, 2017

En prime j'ai sorti une nouvelle version 8.7 bien mérité après cette longue bataille.

@Draleg

This comment has been minimized.

Show comment
Hide comment
@Draleg

Draleg Jun 2, 2017

La version 8.7 corrige bien le bug ;-) .

Draleg commented Jun 2, 2017

La version 8.7 corrige bien le bug ;-) .

@tontof

This comment has been minimized.

Show comment
Hide comment
@tontof

tontof Jun 2, 2017

Owner

ouf

Owner

tontof commented Jun 2, 2017

ouf

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment