Dotclear

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

Annonce

#1 2010-01-11 15:09:41

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Multi-blogs : méthodologie pour réparer les bobbs de départ

Bonjour,

Comme bien souvent, je suis allé bien vite lors de la première installation de DC pour mon projet du moment. Du coup, je fais face à certains "problèmes" maintenant :-)

Je vous explique... contrairement à ce qui est indiqué ici : http://fr.dotclear.org/documentation/2. … /multiblog, j'ai installé tout le contenu de Dotclear à la racine du site (sans sous-dossier /dotclear/ donc). En soit, je ne sais pas si c'est vraiment problématique pour Dotclear... mais là où ça se corse (pour moi en tout cas...), c'est pour faire du multi-blogs...

J'ai consulté la doc. clean-install : http://fr.dotclear.org/documentation/2. … an-install

Donc, on va essayer de procéder par étapes, merci de me dire si je me trompe complètement ;-)

1 - Créer un sous-dossier /mynewblog/ par exemple.
2 - Placer un fichier index.php qui contient :

<?php
   define('DC_BLOG_ID','mynewblog'); # identifiant du blog
   require dirname(__FILE__).'/../inc/public/prepend.php'; # chemin vers prepend.php
?>

3 - C'est maintenant que je me perds un peu... Dans la doc. il est dit :

Au même niveau que /dotclear, créez un répertoire nommé all-blogs. Placez-y un sous-répertoire nommé plugins.

Ouvrez le fichier /dotclear/inc/config.php. Repérez les deux lignes suivantes :

//Plugins root
define('DC_PLUGINS_ROOT',dirname(__FILE__).'/../plugins');

et remplacez-les par :

// Plugins root - les plugins de base restent en place, les nouveaux vont dans /all-blogs/plugins
define('DC_PLUGINS_ROOT',dirname(__FILE__).'/../plugins'.
PATH_SEPARATOR.dirname(__FILE__).'/../../all-blogs/plugins')

Dans mon cas (tous les dossiers de Dotclear sont à la racine), est-ce nécessaire et si oui comment procéder ?
Personnellement, si c'est possible, je trouve ça très bien si tous les plugins restent dans le dossier www/plugins/ (comme j'édite tout avec Dreamweaver et qu'il me sert aussi de ftp, ça évite d'avoir des sous-sous-sous-dossiers à ouvrir dans tous les sens).

4 - La configuration à partie du panneau d'admin. : comment dois-je modifier les chemins themes et public pour "mynewblog" ?

public_path: ../public ?
public_url: /public ?
themes_path: ../themes ?
themes_url: /themes ?

Question annexe : Je souhaite protéger un peu plus l'accès à la partie admin. Est-ce que d'après c'est une bonne idée de rajouter un fichier htpasswd avec un identifiant et mot de passe différents du compte admin ?


Merci beaucoup ;-)

Hors ligne

#2 2010-01-11 16:13:23

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

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

Tout l'intérêt de la méthode décrite dans la page que tu cites provient de la séparation des fichiers de Doctlear de tes personnalisations. Si tu mets tout à la racine, tu en perds le principal bénéfice, qui est d'organiser au mieux le contenu de ton serveur

Si tu insistes pour continuer ainsi, les chemins indiqués dans config.php et index.php sont différents, car ils dépendent de la place, dans la hiérarchie du serveur, du fichier index.php du blog

Dans ton cas, je dirais qu'il faut enlever ../ dans tous les chemins ;)

Hors ligne

#3 2010-01-11 16:23:23

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

Qu'est-ce qu'il me faudrait modifier si je veux déplacer tout le contenu de www/ sauf index.php (?) dans www/dotclear ? Car en l'état le site tourne déjà et je ne voudrais pas tout mettre "hors circuit" alors que ce dernier commence à se faire doucement sa place...

Mais j'ai également peur que les billets qui font appel à un fichier contenu dans www/public/ (et notamment l'énorme stock de photos que j'ai déjà mis en place) soient HS (en tout cas les images) :-/


Merci.

Hors ligne

#4 2010-01-11 17:13:56

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

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

Il faudrait modifier pas mal de choses, à toi de voir si ça vaut le coup. Tes données ne risquent rien normalement.

Tu dois déplacer tous les fichiers et dossiers de Dotclear (ceux de la distribution) dans un répertoire dotclear, et recréer les répertoires plugins, themes et public à la racine (attention, tes images devront aller dans le répertoire public à la racine pour ne rien casser dans les billets) au même niveau pour avoir :

www
---dotclear
------admin/
------cache/
------db/
------inc/
------locales/
------plugins/(ceux de la distribution)
------public/(ne rien y mettre)
------themes/(ceux de la distribution)
------index.php
---plugins/(tes plugins ajoutés)
---public/(tes images)
---themes/(une copie du thème par défaut et les thèmes que tu as rajoutés ou bidouillés)
---mynewblog/

dans config.php

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

1) pour le blog principal

Pour que ce blog réponde directement sur www, créer à la racine un fichier index.php avec

<?php
   /**
   placer le blog a la racine :
   l'identifiant du blog est "default" 
   les fichiers de dotclear sont dans /dotclear
   */
   define('DC_BLOG_ID','default'); # identifiant du blog
   require dirname(__FILE__).'/dotclear/inc/public/prepend.php'; # chemin vers prepend.php
?>

l'url du blog principal dans les paramètres serait donc

http://www.mondomaine.tld/index.php/

(avec un ? à la fin à la place du / si tu es en query_string)

2) Pour le blog mynewblog l'index.php du répertoire mynewblog

<?php
define('DC_BLOG_ID','mynewblog'); # identifiant du blog
require dirname(__FILE__).'/../dotclear/inc/public/prepend.php';
?>

et son url dans les paramètres

http://www.mondomaine.tld/mynewblog/index.php/

ensuite, dans about:config pour les deux blogs, les chemins des thèmes et du répertoire public :

public_path: ../public
public_url: /public
themes_path: ../themes
themes_url: /themes

Bon courage :)

Hors ligne

#5 2010-01-11 17:36:56

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

amalgame a écrit :

Il faudrait modifier pas mal de choses, à toi de voir si ça vaut le coup. Tes données ne risquent rien normalement.

Le "normalement" n'est pas vraiment rassurant :-/

J'essaie de résumer avant de faire n'importe quoi, corrigez moi si je me trompe :

1 - Créer un répertoire /dotclear/ dans www/ (D'ailleurs, ça peut être /my_dotclear_rocks/ ou tout autre nom de dossier ??)

2 - Déplacer simplement dans /dotclear/ les dossiers (et leur contenu existant) suivants : /admin/, /cache/, /db/, /inc/, /locales/ et index.php

3 - Toujours dans le dossier /dotclear/, uploader les dossiers et leur contenu d'un "Dotclear 2.1.6" fraichement téléchargé : /plugins/, /public/ (qui est vide par défaut), /themes/ (pas besoin de mon theme perso ?)

4 - Modifier /dotclear/inc/config.php en remplaçant :
// Plugins root
define('DC_PLUGINS_ROOT',dirname(__FILE__).'/../plugins');

Par :
// Plugins root
define('DC_PLUGINS_ROOT',dirname(__FILE__).'/../plugins'.PATH_SEPARATOR.dirname(__FILE__).'/../../plugins');

5 - On créé le fichier index.php à placer dans www/ :

<?php
define('DC_BLOG_ID','default'); # identifiant du blog
require dirname(__FILE__).'/dotclear/inc/public/prepend.php'; # chemin vers prepend.php
?>

6 - On créé le fichier index.php à placer dans www/mynewblog/ :

<?php
define('DC_BLOG_ID','mynewblog'); # identifiant du blog
require dirname(__FILE__).'/../dotclear/inc/public/prepend.php';
?>

7 - On se rend dans www/dotclear/admin/ et :
a) On pleure si on tombe sur une 404 ou 500...
b) on paramètre les 2 blogs comme ceci :

public_path: ../public
public_url: /public
themes_path: ../themes
themes_url: /themes

C'est vraiment tout ? Aucun risque de tout perdre ?


Merci ;-)

Hors ligne

#6 2010-01-11 18:15:55

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

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

Mathieu M. a écrit :

Le "normalement" n'est pas vraiment rassurant :-/

Les données sont dans la base, pas dans les fichiers sur le ftp ;) "Normalement" = "si tu ne fais pas de manipulation imprévue sans avoir pris la précaution de savoir revenir en arrière"

3 - Toujours dans le dossier /dotclear/, uploader les dossiers et leur contenu d'un "Dotclear 2.1.6" fraichement téléchargé : /plugins/, /public/ (qui est vide par défaut), /themes/ (pas besoin de mon theme perso ?)

Non ton thème perso sera dans le répertoire themes à la racine (avec la copie du thème par défaut). En fait le répertoire www/dotclear/themes ne sera plus utilisé, tout comme le répertoire www/dotclear/public

4 - Modifier /dotclear/inc/config.php en remplaçant :
// Plugins root
define('DC_PLUGINS_ROOT',dirname(__FILE__).'/../plugins');

Par :
// Plugins root
define('DC_PLUGINS_ROOT',dirname(__FILE__).'/../plugins'.PATH_SEPARATOR.dirname(__FILE__).'/../../plugins');

Oui, là tu fais attention : dans www/dotclear/plugins ne doivent rester que les plugins livrés avec Dotclear, et dans www/plugins/ que ceux que tu as rajoutés. Ainsi quand tu feras une mise à jour, les plugins de base seront mis à jour aussi, ainsi que le thème par défaut (dont il faudra faire une nouvelle copie dans www/themes/ à chaque mise à jour)

7 - On se rend dans www/dotclear/admin/ et :
a) On pleure si on tombe sur une 404 ou 500...

Normalement non :D

Hors ligne

#7 2010-01-11 21:18:21

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

Ok merci je vais m'y attacher fermement dans les minutes à venir... Question pour ne pas regretter de ne pas l'avoir posé : le dossier www/dotclear/ => je peux le nommer comme bon me semble n'est-ce pas ?

Autre question : où iront mes médias ensuite ? Dans www/public/ ou www/dotclear/public ?


Merci ;-)

Hors ligne

#8 2010-01-11 21:42:18

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

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

Tu peux nommer le répertoire pwet/ si tu veux, à condition de le répercuter partout dans les fichiers de configuration. Il suffit n fait de remplacer dans tous les chemins "dotclear" par "pwet", ce qui au passage résoud ta question de "sécuriser un peu plus l'admin" : si on ne connaît pas le nom du répertoire du moteur, c'est moins facile à trouver...

Tes médias ne bougent pas, ils restent dans www/public/ ce qui est plus facile puisque tous les billets y font référence ;)

Hors ligne

#9 2010-01-11 22:12:04

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

D'accord. Enfin dernière question (avant la suivante ;-)), quand tu dis de remplacer tous les chemins de "dotclear" par "pwet", ça sous-entend juste le nom du dossier (logique), www/pwet/inc/config.php et les différents fichiers index.php n'est-ce pas ?

Ou alors il y a encore quelques occurrences à corriger ? :-/

Je vais y arriver, promis ! ;-)

Hors ligne

#10 2010-01-11 23:26:42

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

Aaaaah !
Je ne voudrais pas m'emballer trop vite, mais tout semble s'être bien passé :-) Il ne me reste plus qu'à essayer de créer de nouveaux blogs maintenant...

Petite question au passage, dans /inc/config.php, il y a :

// Template cache directory
define('DC_TPL_CACHE',dirname(__FILE__).'/../cache');

Je n'ai pas besoin d'y toucher à ce chemin ?


Merci ;-)

Hors ligne

#11 2010-01-12 10:50:23

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

Houlà !! HELP !!
Lorsque je tente de poster un nouveau billet, j'obtiens :

Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in /home/lemonded/www/plugins/newsletter/inc/class.newsletter.settings.php on line 51

Warning: Cannot modify header information - headers already sent by (output started at /home/user/www/plugins/newsletter/inc/class.newsletter.settings.php:51) in /home/user/www/dotclear/inc/clearbricks/common/lib.http.php on line 102

Je ne vois d'ailleurs pas ce que vient faire Newsletter là-dedans......


Merci pour votre aide.

Hors ligne

#12 2010-01-12 10:53:32

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

[EDIT] J'ai désactivé Newsletter en attendant et la rédaction de nouveau billet semble fonctionner... m'enfin c'est pas très logique... :-/

Hors ligne

#13 2010-01-12 14:54:13

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

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

Vérifie dans les fichiers du plugin s'il n'y a pas de sauts de lignes après le dernier ?>

Sinon, une solution qui marche aussi consiste à supprimer le plugin et à le remettre avec l'installeur ;)

Hors ligne

#14 2010-01-12 15:34:32

Mathieu M.
Membre
Lieu : Rhône-Alpes
Inscription : 2009-09-14
Site Web

Re : Multi-blogs : méthodologie pour réparer les bobbs de départ

Salut,

Effectivement il y a bien un saut de ligne à la fin de newsletter/inc/class.newsletter.settings.php : supprimé. Je vais toutefois désinstaller et réinstaller le plugin, ça ne fera pas de mal comme tu le suggères ;-) (Je ne l'utilise pas encore pleinement, donc je peux me le permettre).

Je vous tiens au courant si il y a un autre souci ;-)


Mathieu.

Hors ligne

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

Pied de page des forums

Sites map