Dotclear

Vous n'êtes pas identifié(e).

Annonce

13 février 2024 Sortie de Dotclear 2.29

#1 2009-02-24 14:15:13

fix
Membre
Inscription : 2005-01-20
Site Web

Plugin Private 0.6 inutilisable en multiblog ?

Bonjour,

J'ai 3 blogs, dont 2 privés protégés par le plugin Private version 0.6 du lab.

Le plugin semble s'emmêler complètement les pinceaux s'il est utilisé sur plusieurs blogs. Ces blogs ont respectivement pour adresses : http://monsite.free.fr/blog1 et http://monsite.free.fr/blog2.

Plusieurs cas de figure :
1. Si le mot de passe utilisé sur les 2 blogs est identique, alors se connecter à l'un connecte aussi automatiquement à l'autre blog...
2. Si le mot de passe est différent sur blog1 et sur blog2, voici ce qui se passe :
     - Je rentre l'url de blog1, je m'identifie avec le bon mot de passe, le site est correctement affiché.
     - Je me rends sur blog2 (l'onglet blog1 n'est pas fermé), il est affiché "Mot de passe incorrect" !
     - Je rentre le mot de passe pour blog2, le site est correctement affiché.
     - Je me rends sur l'onglet blog1, j'actualise la page, le site est déconnecté ! Je veux dire par là qu'on me redemande d'entrer le mot de passe pour blog1. Cela signifie que s'enregistrer sur blog2 a désactivé le mot de passe de blog1...

Existe-t-il un moyen de résoudre ce problème ?

Hors ligne

#2 2009-02-24 14:25:34

Dsls
Modérateur couteau-suisse
Inscription : 2004-11-18
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

Le problème vient de 2 sources :
* 2 blogs sur une même URL
* La ligne 105 du fichier _public.php du plugin qui place le cookie à la racine du site, et pas du blog...

cf ce ticket créé pour l'occasion :)


Dyslexics have more fnu!

Hors ligne

#3 2009-02-24 14:35:15

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : Plugin Private 0.6 inutilisable en multiblog ?

Effectivement.

Mais petite précision, dans ton cas tu joues avec l'option de la connexion automatique.
Correction envisagée (merci pour la suggestion Dsls) en ligne 105 du _public.php

 setcookie($cookiepass,md5($_POST['private_pass']),time()+31536000,'/');

par

 setcookie($cookiepass,md5($_POST['private_pass']),time()+31536000,$path);

blog1 physiquement à un répertoire ou un un fichier php bidouillé via .htaccess ?

Merci pour les retours.

Hors ligne

#4 2009-02-24 14:35:36

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

J'ai compris d'où vient le problème... mais de là à le résoudre... ;)

J'imagine qu'il faudrait non seulement modifier la ligne qui crée le cookie de manière à le créer au bon endroit (dans le répertoire du blog plutôt qu'à la racine), mais aussi modifier la (ou les ???) ligne(s) qui s'occupe de récupérer le cookie, de manière à aller le chercher au bon endroit ? Et comment récupérer le nom du répertoire du blog ?

Bref, je suis dépassé... malheureusement...

Hors ligne

#5 2009-02-24 14:38:04

Dsls
Modérateur couteau-suisse
Inscription : 2004-11-18
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

Je pense que les messages se sont croisés :)


Dyslexics have more fnu!

Hors ligne

#6 2009-02-24 14:38:42

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

Oooops j'ai répondu trop vite, je n'avais pas lu ton message osku.

blog1 et blog2 ont été créés selon la procédure que j'ai décrite ici.

Autrement dit, par une simple copie et un renommage du fichier blog.php à la racine...

Hors ligne

#7 2009-02-24 15:02:17

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

J'ai modifié la ligne 105 du _public.php plugin... sans succès ! J'ai mis le code suggéré par osku :

setcookie($cookiepass,md5($_POST['private_pass']),time()+31536000,$path);

J'ai vidé le cache de mon navigateur, j'ai vidé le cache de dotclear... et ça n'a rien changé. J'ai pourtant testé plusieurs fois, en vidant les caches à chaque fois.

Firefox m'indique toujours 2 cookies pour monsite.free.fr (le répertoire du blog n'est donc pas pris en compte ???) : j'ai le cookie dc_blog_private_blog1 et dc_blog_private_blog2.

J'en reviens à ma question précédente : n'y aurait-il pas autre chose à modifier ? L'endroit où l'on va chercher le cookie ?

Hors ligne

#8 2009-02-24 15:08:53

Dsls
Modérateur couteau-suisse
Inscription : 2004-11-18
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

Tu as bien supprimé les cookies avant de retenter ?


Dyslexics have more fnu!

Hors ligne

#9 2009-02-24 15:13:30

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

Je viens de tout refaire, et oui : le problème persiste. J'ai supprimé tous mes cookies, vidé le cache du navigateur et de dotclear, et même re-uploadé la modif (au cas où...), et rien n'a changé par rapport au comportement décrit en #1...

Hors ligne

#10 2009-02-24 15:24:16

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

J'avais oublié :

osku a écrit :

Mais petite précision, dans ton cas tu joues avec l'option de la connexion automatique.

Je ne comprends pas bien. Cocher cette case OU ne pas la cocher ne change rien du tout. Même si je ne la coche sur aucun des 2 blogs, le problème reste strictement identique...

Hors ligne

#11 2009-02-24 15:57:19

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

J'ai lu quelques billets consacré à ce plugin, et ça me fait penser que j'ai peut-être omis de mentionner certaines infos importantes...

1. Le plugin est installé dans un répertoire à part (autrement dit hors du répertoire dotclear, et directement à la racine de l'hébergement) : le plugin est installé dans www/dotclear-files/public/plugins.
2. Pour forcer les plugins à s'installer dans ce répertoire, j'ai modifié la ligne "define('DC_PLUGINS_ROOT',dirname(FILE).'/../plugins');" du fichier dotclear/inc/config.php par les lignes suivantes :

define('DC_PLUGINS_ROOT',dirname(__FILE__).'/../plugins'.
PATH_SEPARATOR.dirname(__FILE__).'/../../dotclear-files/plugins/');

3. J'utilise un thème personnalisé. Il est tout à fait possible qu'il y manque tout un tas de behaviors (que je n'ai pas pris la peine de recopier du thème par défaut).

Est-ce que l'un ou l'autre de ces éléments pourrait avoir une incidence ???

Hors ligne

#12 2009-02-24 17:15:40

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : Plugin Private 0.6 inutilisable en multiblog ?

Merci pour toutes ces informations.

Il semble que le problème soit plus lié à ta méthode d'installation du multiblog.

Il faut impérativement pour que ce plugin fonctionne que tu aies un répertoire par blog comme indiqué ici : http://fr.dotclear.org/documentation/2. … /multiblog

Je te propose de réajuster ton installation pour voir si le pb persiste :)

Hors ligne

#13 2009-02-24 19:54:35

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

Mmmmmm... Plus facile à dire qu'à faire. J'ai quantité de galeries, sans parler des images dans les billets. Si mes urls changent, il faudrait que je refasse TOUT ! Ou alors mes images ne s'afficheront plus !

Il n'y aurait vraiment pas d'autre solution ?
J'ai bien des cookies différents pour chacun des blogs, alors pourquoi s'écrasent-ils l'un l'autre ???

Hors ligne

#14 2009-02-24 20:52:39

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

Le problème peut se poser autrement : existe-t-il un moyen simple de retrouver les miniatures des galeries (les galeries n'ont plus aucune miniature associée) ainsi que les images à l'intérieur des billets après un changement d'urls ???

Il faudrait pouvoir modifier les URLS de toutes ces images, mais comment ? Peut-être qu'une requête SQL pourrait faire ça ?

Hors ligne

#15 2009-02-24 21:13:10

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

En fait il n'y a d'image dans un billet que sur 1 seul de mes blogs, donc ça devrait être faisable par une requête sql : quelque chose du genre "dans tous les billets, on remplace /dotclear-files/ par /blog1/"... Ça doit être faisable ???

Par contre, je ne comprens pas pourquoi il n'y a plus aucune miniature attachée à mes galeries ? Et où (dans quelle colonne de quelle table) cela est-il stocké, que je vois si je peux le modifier ?

Hors ligne

#16 2009-02-24 21:46:05

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

Bon, j'étais persuadé que ça fonctionnerait en suivant le conseil d'osku, c'est-à-dire en réinstallant mon multiblog selon la méthode indiquée dans la doc (un répertoire par blog)...

... et bien non ! Cela n'a absolument rien changé. J'ai rigoureusement le même comportement... C'est incompréhensible ! Et j'ai fait tout ça pour rien :(

Une petite idée pour me sortir de là ? D'avance merci !

Hors ligne

#17 2009-02-25 09:46:20

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : Plugin Private 0.6 inutilisable en multiblog ?

J'ai contacté fix par email privé pour connaitre ces blogs privés et regarder de plus près.

Ce qui me surprend c'est :
Son blog est sous la forme : http://machin.free.fr/rep1/toto/
Et le chemin à enregistrer dans le cookie de session est le suivant (http://lab.dotclear.org/browser/plugins … ic.php#L50)

$path = str_replace(http::getHost(),'',$core->blog->url);

Qui devrait me retourner en toute logique le chemin suivant :

 /rep1/toto/

Est-ce que la fonction getHost a un comportement loufoque chez free ?

Question subsidiaire :
Peut-on avoir deux cookies de même nom dirigés vers le même host mais avec des chemins différents ?

Hors ligne

#18 2009-02-25 09:57:53

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

En fait les cookies ONT bien des chemins différents. Voici ce que m'indique Firefox : j'ai 3 cookies sur sxjpl.free.fr :
. 1° cookie : nom = dc_blog_private_toto ; hôte = sxjpl.free.fr ; chemin = /rep1/toto/
. 2° cookie : nom = dc_blog_private_maman ; hôte = sxjpl.free.fr ; chemin = /rep2/maman/
. 3° cookie : nom = dc_privateblog ; hôte = sxjpl.free.fr ; chemin = /

Hors ligne

#19 2009-02-25 10:13:00

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : Plugin Private 0.6 inutilisable en multiblog ?

Minute papillon :)

Le plugin peut générer entre 1 et 2 cookies par blog : 
- dc_privateblog : cookie de session généré si on rentre le bon mot de passe -
- dc_blog_private_<id du blog> est créé si on coche "se connecter automatiquement" - présence facultative.

On laisse donc le second de coté pour notre histoire..

Hors ligne

#20 2009-02-25 10:21:43

Philippe
Stagiaire
Lieu : Toulon
Inscription : 2004-06-13
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

Je dis peut-être une ânerie, mais à partir du moment où les cookies ont des noms différents, pourquoi ne pas les mettre tous à la racine du domaine ?

Hors ligne

#21 2009-02-25 10:25:51

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : Plugin Private 0.6 inutilisable en multiblog ?

amalgame a écrit :

Je dis peut-être une ânerie, mais à partir du moment où les cookies ont des noms différents, pourquoi ne pas les mettre tous à la racine du domaine ?

Voui pourquoi pas .

Mais le problème ici est dc_privateblog dont le chemin n'est pas défini comme il devrait .. (au moins chez Free)

Hors ligne

#22 2009-02-25 18:17:06

fix
Membre
Inscription : 2005-01-20
Site Web

Re : Plugin Private 0.6 inutilisable en multiblog ?

Je pensais que le Options +Multiviews dans mon .htaccess pouvait avoir une incidence... Je l'ai supprimé, du coup mes 2 blogs sont http://sxjpl.free.fr/blog2/ et http://sxjpl.free.fr/blog3/
Mais là encore, ça n'a rien changé !

Aucune piste à l'horizon osku ?

Hors ligne

#23 2009-02-26 14:47:33

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : Plugin Private 0.6 inutilisable en multiblog ?

fix a écrit :

Je pensais que le Options +Multiviews dans mon .htaccess pouvait avoir une incidence... Je l'ai supprimé, du coup mes 2 blogs sont http://sxjpl.free.fr/blog2/ et http://sxjpl.free.fr/blog3/
Mais là encore, ça n'a rien changé !

Aucune piste à l'horizon osku ?

Si, je vais définir le nom du cookie en fonction du blog et ce sera réglé.

Mais j'aurais bien aimé réponses à mon message en #17

Hors ligne

#24 2009-02-26 15:37:09

Tomtom33
Responsable des travaux finis
Lieu : Barcelone
Inscription : 2006-06-13

Re : Plugin Private 0.6 inutilisable en multiblog ?

pour répondre à ta question en #17 ce n'est pas possible d'avoir deux cookies avec le même nom, ça ne fait qu'écraser le précédent.

Et aussi, tu devrais utiliser les variables $_SERVER il y en a une qui donne direct le path


Le lab => http://lab.dotclear.org
Besoin d'un plugin? => http://plugins.dotaddict.org
Besoin d'un thème? => http://themes.dotaddict.org
Besoin d'une astuce? => http://tips.dotaddict.org

Hors ligne

#25 2009-02-26 15:57:45

osku
Membre
Lieu : 28
Inscription : 2005-06-15

Re : Plugin Private 0.6 inutilisable en multiblog ?

Tomtom33 a écrit :

pour répondre à ta question en #17 ce n'est pas possible d'avoir deux cookies avec le même nom, ça ne fait qu'écraser le précédent.

Et aussi, tu devrais utiliser les variables $_SERVER il y en a une qui donne direct le path

T'es sûr pour ton premier point ?
C'est pas le triplet nom du cookie - host - path ?

Car le cookie de mémorisation des infos pour le post des commentaires porte le même nom sur les blogs

comment_info

Hors ligne

Vous n'êtes pas identifié(e).

Pied de page des forums

Sites map