MyBB.support, le portail francophone de MyBB

Version complète : Connexion/déconnexion impossible, données inutilisables depuis autre site
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.

Bonsoir,

J'ai fait il y a 2 jours environ la mise à jour de Mybb en 1.6.13. Le lendemain, on me signal qu'il est impossible de se connecter au forum. Je regarde, j'essaye de me déconnecter : impossible. Après avoir revu vos petits tuto concernant les cookies, je "règle" le soucis.

Auparavant, ma config était sous cette forum :

URL : forum.domaine.fr
Cookie domain : .domaine.fr
Cookie path : /forum/

J'ai modifié en ceci :

Cookie domain : forum.domaine.fr
Cookie path : /

Cela semblait fonctionner, jusqu'à ce que je constate le contraire aujourd'hui. J'ai tenté une réinstallation, une suppression du fichier settings.php, en vain. Puis j'ai modifié à nouveau en ajoutant le "." que j'avais oublié.

Cookie domain : .forum.domaine.fr
Cookie path : /

A présent, cela semble fonctionner, puisque j'arrive à me connecter et me déconnecter. Cependant, les utilisateurs qui étaient déjà connecté auparavant ne parviennent pas à se déconnecter tant qu'ils ne supprime pas les sessions et le cache de leur navigateur (c'est donc le premier problème). Ils sont comme bloqués.

De plus, j'ai un site, qui est relié au forum. Ou plutôt l'inverse : mon site utilise les sessions de mybb pour fonctionner (il suffit de retirer "forum." à l'url pour y accéder). Normalement, lorsque l'on se connecte au forum, on est également connecté au site, et les boutons "se connecter" et "s'enregistrer" à droite disparaissent. Alors que maintenant, ils restent présents. C'est comme si mon site ne détectait plus les sessions de mybb. (Cependant, les utilisateurs qui ne peuvent pas se déconnecter du forum sont bien considérés comme connectés par le site).

C'est donc un double problème, que je ne sais pas comment résoudre.

Merci d'avance pour l'aide que vous pourrez m'apporter. Si vous voulez que j'éclaircisse certains points, n'hésitez pas.

Note : Je ne peux pas éditer mon premier message, ça m'indique "Vous ne pouvez pas éditer le message principal de cette discussion, car il contient des informations pour l'administration!"

Ne m'étant pas relu au préalable, je vous prie de m'excuser pour les fautes que vous y trouverez.
J'ai réalisé plusieurs connexions/déconnexions sans noter de problème.
Difficile de corriger ce qui fonctionne normalement ! Tongue

A noter que la bonne configuration des cookies est bien :
URL : forum.domaine.fr
Cookie domain : .domaine.fr
Cookie path : /forum/
Oui, c'est bien ce que j'ai dit dans mon message : la connexion/déconnexion fonctionne désormais, SAUF pour ceux qui sont encore connectés (et qui étaient connectés avant que les soucis ne commencent), dont la déconnexion est impossible via le bouton "déconnecter".

As-tu regarder sur domaine.fr en étant connecté sur le forum?

Concernant la configuration des cookies, j'ai peur de ne rien comprendre alors...

Citation :Mais d'abord quelques éclaircissements.

Si votre forum est à cette url : http://mon_domaine.com, les réglages doivent être :
Domaine des cookies : .mon_domaine.com (ne pas oublier le '.' au début !)
Chemin des cookies : /
Si votre forum est à cette url : http://mon_domaine.com/forum, les réglages doivent être :
Domaine des cookies : .mon_domaine.com
Chemin des cookies : /forum/
Si votre forum est à cette url : http://sous_domaine.mon_domaine.com, les réglages doivent être :
Domaine des cookies : .sous_domaine.mon_domaine.com ou .mon_domaine.com
Chemin des cookies : /
Si votre forum est à cette url : http://sous_domaine.mon_domaine.com/forum, les réglages doivent être :
Domaine des cookies : .sous_domaine.mon_domaine.com ou .mon_domaine.com
Chemin des cookies : /forum/

Je suis bien dans la 3e cas, non? Le 2e cas ne fonctionnant plus, c'est là que les soucis ont commencé !
Pour ceux qui ne peuvent pas se déconnecter, il leur suffit de supprimer les cookies, associés à votre site, de leur navigateur.

Alors un nouveau cookie bien configuré le remplacera... Wink

Ah.. désolé, je n'avais pas remarqué que le forum était dans un sous-domaine, c'est donc bien le cas n°3.

Pour le reste, exdiogene a répondu déjà.
D'accord, il n'y a pas moyen de forcer la fermeture de toutes les sessions existantes afin que tous les joueurs soient déconnectés ? Si c'est possible, ce serait plus simple, plutôt que d'expliquer à certains la marche à suivre...

Pour mon autre problème, à savoir le site principal qui ne reconnaît plus les personnes connectées, vous avez une idée ? A savoir que je n'ai rien touché de ce point de vue, et que les sessions testées sont celles de mybb
Personne n'a d'idée ?

Mon site est strucuré ainsi :

http://www.domaine.fr
http://www.domaine.fr/forum (localisation réelle du forum) mais accessible par forum.domaine.fr

Depuis que j'ai fait la MAJ (en tout cas je n'avais pas le problème avant), si je cherche a vérifier les sessions de mybb :
- Dans http://www.domaine.fr/forum/dossier : ça fonctionne
- Dans http://www.domaine.fr : ça ne fonctionne plus, alors que ça faisait 6 mois que ça fonctionnait parfaitement !

Y a-t-il un code php dans mybb qui bloque ceci ? Comment puis-je faire pour que ça fonctionne de nouveau ?
Je répète encore une fois, il faut supprimer les anciens cookies pour pouvoir les remplacer avec de nouveaux.

Si le "bridge" établi entre MyBB et le site à la racine ne fonctionne plus, il faudra reconfigurer le "bridge" en question.

Personne n'a signalé de problème similaire avec cette version de MyBB...
J'ai bien compris concernant les anciens cookies Smile Le forum est reconfiguré comme je l'ai indiqué (situation 3) et tout et tout. La connexion/déconnexion fonctionne parfaitement à partir du moment où les anciens cookies sont supprimés du navigateur.

A priori "le bridge", comme tu dis, ne nécessite aucune configuration...

J'utilise ceci dans toutes mes pages, pour demander d'aller chercher tout ce que m'offre mybb (le chemin du require_once est adapté en fonction de l'emplacement de ladite page)

Code PHP :
<?php
define
("IN_MYBB"1);
require_once(
"forum/global.php"); 
?>

Et ça fonctionnait partout. Aujourd'hui, ça ne fonctionne plus (ie que ça me considère comme étant toujours déconnecté, en visiteur) à la racine ni dans les sous-dossiers, sauf ceux directement rattachés au dossier "forum"...

J'ai une page de test afin de vérifier le fonctionnement des variables de mybb :

Code PHP :
<?php
define
("IN_MYBB"1);
require_once(
"global.php"); 

    echo 
'<pre>';
    
print_r($mybb);
    echo 
'</pre>';

?>

Et j'utilise des variables de ce type : $mybb->user['uid']

Tout fonctionne parfaitement quand je suis dans le dossier forum ou dans ses sous-dossiers, mais plus à la racine. Et c'est là que je ne comprends vraiment pas !

Le print_r($mybb); me renvoit absolument tout correctement, si je suis connecté, déconnecté, admin, pas admin etc, mais dès que je le met à la racine (en ayant évidemment modifié le chemin du require_once), ça ne fonctionne plus...
Je suggère de changer le code pour ceci :

Code PHP :
<?php
define
("IN_MYBB"1);
$dir_actuel getcwd();
chdir($dir_actuel.'/forum');
require_once(
"global.php"); 

    echo 
'<pre>';
    
print_r($mybb);
    echo 
'</pre>';
chdir($dir_actuel);
?>

De cette façon, tout fonctionnera adéquatement dans le répertoire racine.
Je viens d'essayer le code que tu m'as fourni, malheureusement ça ne change rien :x

Pour que je comprenne bien, ça simulait sa présence dans le dossier "forum", en gros ?

Edit: Et je te confirme :

1) Pour les membres qui ne peuvent pas se déconnecter, ils sont bien considérés comme connectés partout (mais donc leur déconnexion est impossible si elle n'est pas forcée par le navigateur)
2) Ceux qui ont supprimé la session (qui peuvent se connecter/déco normalement) ne sont pas considérés comme connectés par le http://www.domaine.fr

Je ne comprends vraiment pas ce qu'il se passe...
Effectivement.

Il ne faut pas oublier que si un membre inscrit "www.Mon_Domaine.fr" ou "Mon_Domaine.fr" cela peut encore faire une différence...

Voilà pourquoi il est important de bien configurer les cookies au départ. Sinon il faut tous les effacer et recommencer.

Il serait probablement plus facile de modifier le répertoire "forum" en un sous-domaine "forum" car le cookie serait fonctionnel partout avec la configuration suivante :
Domaine des cookies : .mon_domaine.fr
Chemin des cookies : /

Alors pour le site ce sera :
"mon_domaine.fr" ou "www.mon_domaine.fr"

Pour le forum :
"forum.mon_domaine.fr"
Le forum était déjà un sous domaine Wink

Mais c'est super, ça refonctionne parfaitement bien ! Merci beaucoup pour ton aide !
 Utilitaire de traduction fourni par Regentronique