Témoignage sur la mutualisation du noyau SPIP en 1.9.2

Bonjour,

Je viens de mettre en place la mutualisation du noyau de SPIP 1.9.2 pour
une quinzaine de sites, avec Apache 2.2.4 et PHP 5.2.1.

J'ai utilisé pour cela la nouvelle documentation officielle [1].

La configuration est la suivante : le noyau SPIP est dans un
sous-répertoire de mon arborescence web, genre /test/spip-mutualise, et
les sites sont donc dans /test/spip-mutualise/sites/site1,
/test/spip-mutualise/sites/site2, etc.

RewriteRule ^(/test/siteX)$ $1/ [R,L]
RewriteRule ^(/test/siteX)/(.*)$ /test/spip-mutualise/$2 [QSA,L]

Les sites existaient déjà, chacun utilisant une instance de SPIP
1.9.2. J'ai donc créé les sites /test/spip-mutualise/sites/siteX, puis
copié à l'intérieur les répertoires IMG/ et squelettes/ du site
original. J'y ai enfin créé local/ et tmp/.

Le fait qu'il s'agisse d'une migration a posé le problème prévu par la
documentation : dans la base de données, dans la table spip_documents,
il a fallu que je remplace tous les /IMG/ par /test/site1/IMG/. Ça a été
la manipulation la plus pénible (automatisée par script).

L'un des sites cumulait deux difficultés : il était en version 1.9.1 et
n'était pas mutualisé. Le passage direct en mutualisation s'est
parfaitement déroulé, la mise à jour de la base a été effectuée et
l'interface m'a bien demandé de créer admin_XXXXXXXXX dans le répertoire
/sites/site12/tmp.

J'ai ensuite testé un cas non prévu par la documentation : comment faire
pour protéger l'accès de chaque site en utilisant les htpasswd générés
par SPIP (et donc situés dans /sites/siteX/tmp/) ? Là, pas de mystère,
j'ai été obligé d'utiliser la directive LocationMatch d'Apache :

<LocationMatch ^/test/siteX>
        AuthType Basic
        Authname "Repertoire sous protection"
        AuthUserFile /var/www/test/spip-mutualise/sites/siteX/tmp/.htpasswd
        require valid-user
        Satisfy all
</LocationMatch>

... et ainsi de suite pour chaque site.

Il faut penser à protéger les URLs du genre
http://monsite/test/spip-mutualise car sinon, un petit malin pourrait
accèder aux documents attachés en contournant la protection
précédente… en demandant
http://monsite/test/spip-mutualise/sites/siteX/IMG/pdf/machin.pdf plutôt
que http://monsite/test/siteX/IMG/pdf/machin.pdf

<LocationMatch ^/test/spip-mutualise>
        Order deny,allow
        Deny from all
</LocationMatch>

Cette solution permet d'avoir une authentification web différente
suivant le site demandé.

Résultat de la mutualisation : j'ai 15 sites parfaitement opérationnels,
la migration est transparente pour les rédacteurs et le public, et je ne
mets plus à jour SPIP qu'une seule fois (grâce à SVN et à la branche
1.9.2, bien sûr) pour tous les sites.

J'espère que ce témoignage vous donnera envie de sauter le pas, et
d'enfin mutualiser le noyau de SPIP pour vos centaines de sites :wink:

Bien amicalement,

[1] http://www.spip.net/fr_article3514.html
--
Florian

On Fri, 2007-02-23 at 17:54 +0100, Florian Dufour wrote:

Bonjour,

Je viens de mettre en place la mutualisation du noyau de SPIP 1.9.2 pour
une quinzaine de sites, avec Apache 2.2.4 et PHP 5.2.1.

J'ai utilisé pour cela la nouvelle documentation officielle [1].

La configuration est la suivante : le noyau SPIP est dans un
sous-répertoire de mon arborescence web, genre /test/spip-mutualise, et
les sites sont donc dans /test/spip-mutualise/sites/site1,
/test/spip-mutualise/sites/site2, etc.

  Est-ce que tu as essayé en mettant les sites ailleurs que "sous" le
code de spip ? genre spip dans /usr/local et les sites dans
/var/www/... ?

  J'avais essayé sans succés sur un site de test.

--
À+, Pif.

christian lefebvre a écrit :

On Fri, 2007-02-23 at 17:54 +0100, Florian Dufour wrote:

La configuration est la suivante : le noyau SPIP est dans un
sous-répertoire de mon arborescence web, genre /test/spip-mutualise, et
les sites sont donc dans /test/spip-mutualise/sites/site1,
/test/spip-mutualise/sites/site2, etc.

  Est-ce que tu as essayé en mettant les sites ailleurs que "sous" le
code de spip ? genre spip dans /usr/local et les sites dans
/var/www/... ?

J'avais moi aussi essayé avec la version 1.9.1, sans succès non plus. Je
vais essayer avec la nouvelle version.

Ce qui est sûr, c'est qu'il faut au moins modifier le fichier
mes_options.php proposé par la documentation :

if (is_dir($e = _DIR_RACINE . 'sites/' . $r[1]. '/')) {

deviendrait

if (is_dir($e = '/var/www/' . $r[1]. '/')) {

Je te tiens au courant.

Amicalement,

--
Florian

Florian a écrit :

christian lefebvre a écrit :

  Est-ce que tu as essayé en mettant les sites ailleurs que "sous" le
code de spip ? genre spip dans /usr/local et les sites dans
/var/www/... ?

Ce qui est sûr, c'est qu'il faut au moins modifier le fichier
mes_options.php proposé par la documentation :

if (is_dir($e = _DIR_RACINE . 'sites/' . $r[1]. '/')) {

deviendrait

if (is_dir($e = '/var/www/' . $r[1]. '/')) {

J'ai essayé de mettre les sites ailleurs que sous le code de spip :

- Spip dans /var/www/noyau-spip
- Un site test mutualisé dans /var/www/sites-spip-mutualises/spip-test

J'utilise donc, dans mes_options du noyau SPIP :

    if (is_dir($e = '/var/www/sites-spip-mutualises/' . $r[1]. '/')) {

La redirection Apache est la suivante :

RewriteRule ^(/spip-test)$ $1/ [R,L]
RewriteRule ^(/spip-test)/(.*)$ /var/www/noyau-spip/$2 [QSA,L]

Eh bien... ça marche "presque".

La partie ecrire fonctionne, je peux ajouter des documents attachés par exemple, qui vont bien dans /var/www/sites-spip-mutualises/spip-test/IMG. Mais je ne peux plus les télécharger à partir de cette espace, car l'URL (lorsque je clique sur l'icone) est :

http://monsite.fr/spip-test//var/www/sites-spip-mutualises/spip-test/IMG/pdf/exil-fdp.pdf

La partie publique ne suit pas non plus : elle s'affiche correctement, à part pour les liens des documents attachés. Par exemple :

http://monsite.fr/var/www/sites-spip-mutualises/spip-test/IMG/pdf/exemple.pdf

Ouille !

C'est sûr que ça ne peut pas marcher, il faudrait un moyen de donner à SPIP l'URL (et non pas le répertoire) des documents attachés, utilisée pour générer l'URL de ces documents.

Autre incongruité qui provient du même problème :

#DOSSIER_SQUELETTE renvoie : /var/www/sites-spip-mutualises/spip-test/squelettes

J'y réfléchis, quitte à passer sur spip-dev.

Amicalement,

--
Florian

Bonjour

j'ai galéré hier aussi avec la mutualisation.
Après différents échanges sur irc
voici la méthode que j'ai utilisée.

Mutualisation de spip avec différents noms de domaine dans le
cadre d'un herbegement mutualisé standard, sans accès root.

j'ai testé deux méthodes
le spip à la racine.w
le spip en sous dossier du compte.
une seule base de données.

1. installation d'un spip neuf
1. Création du repertoire sites
3. modification du fichier htaccess de la dist :
- activation du rewrite base (/ -> dans le cas du spip racine /nom du
sous dossier -> dans le cas du sous dossier)
4. création du fichier config/mes options dans lequel je mets
le code suivant - correction du code proposé dans la doc (Thx Fil)
dans les deux cas

<?php

   if (is_dir($e = _DIR_RACINE . 'sites/' . $_SERVER['SERVER_
NAME']. '/')) {
$clean=str_replace(".","_",$_SERVER['SERVER_NAME']);

$cookie_prefix = $table_prefix = $clean;
       
       define('_SPIP_
PATH',
           $e . ':' .
           _DIR_RACINE .':' .
           _
DIR_RACINE .'dist/:' .
           _DIR_RESTREINT);

       spip_
initialisation(
           ($e . _NOM_PERMANENTS_INACCESSIBLES),
           (
$e . _NOM_PERMANENTS_ACCESSIBLES),
           ($e . _NOM_TEMPORAIRES_
INACCESSIBLES),
           ($e . _NOM_TEMPORAIRES_ACCESSIBLES)
           );

$GLOBALS['dossier_squelettes'] = $e.'squelettes';

       if (is_
readable($f = $e._NOM_PERMANENTS_INACCESSIBLES._NOM_CONFIG.'.php'))
include($f);
   }

?>

5. Mes sites étant hostés par des hebergeurs utilisants alternc
je fais pointer mes urls vers la racine de mon hebergement : /

6. Je crée dans le repertoire sites des dossiers dont le
nom est l'url de chacun de mes sites :
/sites/machin.org
/sites/bidule.com
et même
/sites/compte.hebergeur.net

si mon spip est dans un sous repertoire ça
donne :
/repertoirespip/sites/bidule.com

avec les sous repertoires
/sites/bidule.com/local
/sites/bidule.com/IMG
/sites/bidule.com/config
/sites/bidule.com/tmp
/sites/bidule.com/squelettes etc...

7.je me rends à l'url d chacun de mes repertoires :
ex : machin.org
j'ai le message
Site en travaux
Ce site n'est pas encore configuré. Revenez plus tard...

8. je me rends à machin.org/ecrire pour commencer
l'installation

9. Le système crée des tables nom_site_xxxx pour chacun
des sites

VOilà - je crois que c'est tout. C'est pas hyper évident
en lisant la doc + le code proposé semble bugguer
mais au final c'est assez simple à y regarder une fois les sueurs
passées...

J'ai configuré deux hebergements de la sorte hier, c'est top
mais ça m'a pris du temps pour trouver la bonne méthode...
et rappatrier des sites en 1.9.1 ou moins direct en 1.9.2
en plus ça m'a valut quelques sueurs froides liées aux passages de
version - mais là la doc est super + le script
qui permet de passer de iso-latin a utf-8 est top donc les conneries
sont
de mon côté.

Par contre : pour le dossier image des /sites réimportés
je n'ai pas utilisé la méthode qui préconise de changer les
adresses de dossier dans les dump directement. J'ai monté le contenu
des anciens dossiers dans le spip racine (que je n'utilise pas
en tant que tel) - je n'ai pas rencontré de conflits de noms car les
docs des différents sites sont très différents. C'est pas ultime
non plus comme choix mais aller taper dans le dump je me sentais
pas trop de faire la manip.
La méthode que j'ai utilisée là fait que les anciennes images sont dans
/IMG
et les nouvelles pour la suite sont dans
/sites/machine.org/IMG ce qui n'est pas super non plus... mais bon

Voilà.

LPG

In <ernn8s$v90$1@sea.gmane.org> Florian wrote:

Florian a =E9crit :

christian lefebvre a =E9crit :

  Est-ce que tu as essay=E9 en mettant les sites ailleurs que "sous"
  le
code de spip ? genre spip dans /usr/local et les sites dans
/var/www/... ?

Ce qui est s=FBr, c'est qu'il faut au moins modifier le fichier
mes_options.php propos=E9 par la documentation :

if (is_dir($e =3D _DIR_RACINE . 'sites/' . $r[1]. '/')) {

deviendrait

if (is_dir($e =3D '/var/www/' . $r[1]. '/')) {

J'ai essay=E9 de mettre les sites ailleurs que sous le code de spip :

- Spip dans /var/www/noyau-spip
- Un site test mutualis=E9 dans /var/www/sites-spip-mutualises/spip-
test

J'utilise donc, dans mes_options du noyau SPIP :

    if (is_dir($e =3D '/var/www/sites-spip-mutualises/' . $r[1]. '/')) {

La redirection Apache est la suivante :

RewriteRule ^(/spip-test)$ $1/ [R,L]
RewriteRule ^(/spip-test)/(.*)$ /var/www/noyau-spip/$2 [QSA,L]

Eh bien... =E7a marche "presque".

La partie ecrire fonctionne, je peux ajouter des documents attach=E9s
par =

exemple, qui vont bien dans =

/var/www/sites-spip-mutualises/spip-test/IMG. Mais je ne peux plus les

t=E9l=E9charger =E0 partir de cette espace, car l'URL (lorsque je
clique su= r =

l'icone) est :

http://monsite.fr/spip-test//var/www/sites-spip-mutualises/spip-test/
IMG/pd= f/exil-fdp.pdf

La partie publique ne suit pas non plus : elle s'affiche correctement,
=E0 =

part pour les liens des documents attach=E9s. Par exemple :

http://monsite.fr/var/www/sites-spip-mutualises/spip-test/IMG/pdf/
exemple.p= df

Ouille !

C'est s=FBr que =E7a ne peut pas marcher, il faudrait un moyen de
donner = =E0 =

SPIP l'URL (et non pas le r=E9pertoire) des documents attach=E9s,
utilis=E9= e =

pour g=E9n=E9rer l'URL de ces documents.

Autre incongruit=E9 qui provient du m=EAme probl=E8me :

#DOSSIER_SQUELETTE renvoie : =

/var/www/sites-spip-mutualises/spip-test/squelettes

J'y r=E9fl=E9chis, quitte =E0 passer sur spip-dev.

Amicalement,

-- =

Florian

Bonjour,

En lisant votre message j'ai un petit espoir:
Actuellement, mon site (templedeparis.com) est dans un répertoire
(/mag/). C'est le seul actuellement qui utilise SPIP. Mais je voudrais
faire en sorte que SPIP devienne l'outil générique pour tous les
autres sites de TdP. Je n'ai pas envie que les adresses des autres
sections soient : templedeparis.com/mag/site_1 ou
templedeparis.com/mag/site_2 mais
templedeparis.com/site_1 et templedeparis.com/site_2

Donc, est-ce qu'il est possible en laissant SPIP dans le dossier mag
de mutualiser les autres sites ? Voyez-vous mon soucis ?...

Re-donc, en lisant votre mail, est-il possible de garder mon dossier
mag tel quel sans aucune modif et l'instaurer en tant que noyau de
sites mutualisés accessible par l'adresse templedeparis.com/site_1?

Le 24/02/07, lpg<lpg@melanine.org> a écrit :

Bonjour

j'ai galéré hier aussi avec la mutualisation.
Après différents échanges sur irc
voici la méthode que j'ai utilisée.

Mutualisation de spip avec différents noms de domaine dans le
cadre d'un herbegement mutualisé standard, sans accès root.

j'ai testé deux méthodes
le spip à la racine.w
le spip en sous dossier du compte.
une seule base de données.

1. installation d'un spip neuf
1. Création du repertoire sites
3. modification du fichier htaccess de la dist :
- activation du rewrite base (/ -> dans le cas du spip racine /nom du
sous dossier -> dans le cas du sous dossier)
4. création du fichier config/mes options dans lequel je mets
le code suivant - correction du code proposé dans la doc (Thx Fil)
dans les deux cas

<?php

   if (is_dir($e = _DIR_RACINE . 'sites/' . $_SERVER['SERVER_
NAME']. '/')) {
$clean=str_replace(".","_",$_SERVER['SERVER_NAME']);

$cookie_prefix = $table_prefix = $clean;

       define('_SPIP_
PATH',
           $e . ':' .
           _DIR_RACINE .':' .
           _
DIR_RACINE .'dist/:' .
           _DIR_RESTREINT);

       spip_
initialisation(
           ($e . _NOM_PERMANENTS_INACCESSIBLES),
           (
$e . _NOM_PERMANENTS_ACCESSIBLES),
           ($e . _NOM_TEMPORAIRES_
INACCESSIBLES),
           ($e . _NOM_TEMPORAIRES_ACCESSIBLES)
           );

$GLOBALS['dossier_squelettes'] = $e.'squelettes';

       if (is_
readable($f = $e._NOM_PERMANENTS_INACCESSIBLES._NOM_CONFIG.'.php'))
include($f);
   }

?>

5. Mes sites étant hostés par des hebergeurs utilisants alternc
je fais pointer mes urls vers la racine de mon hebergement : /

6. Je crée dans le repertoire sites des dossiers dont le
nom est l'url de chacun de mes sites :
/sites/machin.org
/sites/bidule.com
et même
/sites/compte.hebergeur.net

si mon spip est dans un sous repertoire ça
donne :
/repertoirespip/sites/bidule.com

avec les sous repertoires
/sites/bidule.com/local
/sites/bidule.com/IMG
/sites/bidule.com/config
/sites/bidule.com/tmp
/sites/bidule.com/squelettes etc...

7.je me rends à l'url d chacun de mes repertoires :
ex : machin.org
j'ai le message
Site en travaux
Ce site n'est pas encore configuré. Revenez plus tard...

8. je me rends à machin.org/ecrire pour commencer
l'installation

9. Le système crée des tables nom_site_xxxx pour chacun
des sites

VOilà - je crois que c'est tout. C'est pas hyper évident
en lisant la doc + le code proposé semble bugguer
mais au final c'est assez simple à y regarder une fois les sueurs
passées...

J'ai configuré deux hebergements de la sorte hier, c'est top
mais ça m'a pris du temps pour trouver la bonne méthode...
et rappatrier des sites en 1.9.1 ou moins direct en 1.9.2
en plus ça m'a valut quelques sueurs froides liées aux passages de
version - mais là la doc est super + le script
qui permet de passer de iso-latin a utf-8 est top donc les conneries
sont
de mon côté.

Par contre : pour le dossier image des /sites réimportés
je n'ai pas utilisé la méthode qui préconise de changer les
adresses de dossier dans les dump directement. J'ai monté le contenu
des anciens dossiers dans le spip racine (que je n'utilise pas
en tant que tel) - je n'ai pas rencontré de conflits de noms car les
docs des différents sites sont très différents. C'est pas ultime
non plus comme choix mais aller taper dans le dump je me sentais
pas trop de faire la manip.
La méthode que j'ai utilisée là fait que les anciennes images sont dans
/IMG
et les nouvelles pour la suite sont dans
/sites/machine.org/IMG ce qui n'est pas super non plus... mais bon

Voilà.

LPG

In <ernn8s$v90$1@sea.gmane.org> Florian wrote:
> Florian a =E9crit :
>> christian lefebvre a =E9crit :
>>> Est-ce que tu as essay=E9 en mettant les sites ailleurs que "sous"
>>> le
>>> code de spip ? genre spip dans /usr/local et les sites dans
>>> /var/www/... ?
>>
>> Ce qui est s=FBr, c'est qu'il faut au moins modifier le fichier
>> mes_options.php propos=E9 par la documentation :
>> =
>
>> if (is_dir($e =3D _DIR_RACINE . 'sites/' . $r[1]. '/')) {
>> =
>
>> deviendrait
>> =
>
>> if (is_dir($e =3D '/var/www/' . $r[1]. '/')) {
>
> J'ai essay=E9 de mettre les sites ailleurs que sous le code de spip :
>
> - Spip dans /var/www/noyau-spip
> - Un site test mutualis=E9 dans /var/www/sites-spip-mutualises/spip-
> test
>
> J'utilise donc, dans mes_options du noyau SPIP :
>
> if (is_dir($e =3D '/var/www/sites-spip-mutualises/' . $r[1]. '/')) {
>
> La redirection Apache est la suivante :
>
> RewriteRule ^(/spip-test)$ $1/ [R,L]
> RewriteRule ^(/spip-test)/(.*)$ /var/www/noyau-spip/$2 [QSA,L]
>
> Eh bien... =E7a marche "presque".
>
> La partie ecrire fonctionne, je peux ajouter des documents attach=E9s
> par =
>
> exemple, qui vont bien dans =
>
> /var/www/sites-spip-mutualises/spip-test/IMG. Mais je ne peux plus les
> =
>
> t=E9l=E9charger =E0 partir de cette espace, car l'URL (lorsque je
> clique su= r =
>
> l'icone) est :
>
> http://monsite.fr/spip-test//var/www/sites-spip-mutualises/spip-test/
> IMG/pd= f/exil-fdp.pdf
>
> La partie publique ne suit pas non plus : elle s'affiche correctement,
> =E0 =
>
> part pour les liens des documents attach=E9s. Par exemple :
>
> http://monsite.fr/var/www/sites-spip-mutualises/spip-test/IMG/pdf/
> exemple.p= df
>
> Ouille !
>
> C'est s=FBr que =E7a ne peut pas marcher, il faudrait un moyen de
> donner = =E0 =
>
> SPIP l'URL (et non pas le r=E9pertoire) des documents attach=E9s,
> utilis=E9= e =
>
> pour g=E9n=E9rer l'URL de ces documents.
>
> Autre incongruit=E9 qui provient du m=EAme probl=E8me :
>
> #DOSSIER_SQUELETTE renvoie : =
>
> /var/www/sites-spip-mutualises/spip-test/squelettes
>
> J'y r=E9fl=E9chis, quitte =E0 passer sur spip-dev.
>
> Amicalement,
>
> -- =
>
> Florian
>

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

Avec une réécriture d’URL dans le htaccess tu devrais pouvoir le faire.

Le 28/02/07, Teddy Payet <teddy.payet@gmail.com > a écrit :

Bonjour,

En lisant votre message j’ai un petit espoir:
Actuellement, mon site (templedeparis.com) est dans un répertoire
(/mag/). C’est le seul actuellement qui utilise SPIP. Mais je voudrais
faire en sorte que SPIP devienne l’outil générique pour tous les
autres sites de TdP. Je n’ai pas envie que les adresses des autres
sections soient : templedeparis.com/mag/site_1 ou
templedeparis.com/mag/site_2 mais
templedeparis.com/site_1 et templedeparis.com/site_2

Donc, est-ce qu’il est possible en laissant SPIP dans le dossier mag
de mutualiser les autres sites ? Voyez-vous mon soucis ?..

Re-donc, en lisant votre mail, est-il possible de garder mon dossier
mag tel quel sans aucune modif et l’instaurer en tant que noyau de
sites mutualisés accessible par l’adresse templedeparis.com/site_1?

Le 24/02/07, lpg<lpg@melanine.org> a écrit :

Bonjour

j’ai galéré hier aussi avec la mutualisation.
Après différents échanges sur irc
voici la méthode que j’ai utilisée.

Mutualisation de spip avec différents noms de domaine dans le
cadre d’un herbegement mutualisé standard, sans accès root.

j’ai testé deux méthodes
le spip à la racine.w
le spip en sous dossier du compte.
une seule base de données.

  1. installation d’un spip neuf
  2. Création du repertoire sites
  3. modification du fichier htaccess de la dist :
  • activation du rewrite base (/ → dans le cas du spip racine /nom du
    sous dossier → dans le cas du sous dossier)
  1. création du fichier config/mes options dans lequel je mets
    le code suivant - correction du code proposé dans la doc (Thx Fil)
    dans les deux cas
<?php if (is_dir($e = _DIR_RACINE . 'sites/' . $_SERVER['SERVER_ NAME']. '/')) { $clean=str_replace(".","_",$_SERVER['SERVER_NAME']); $cookie_prefix = $table_prefix = $clean; define('_SPIP_ PATH', $e . ':' . _DIR_RACINE .':' . _ DIR_RACINE .'dist/:' . _DIR_RESTREINT); spip_ initialisation( ($e . _NOM_PERMANENTS_INACCESSIBLES), ( $e . _NOM_PERMANENTS_ACCESSIBLES), ($e . _NOM_TEMPORAIRES_ INACCESSIBLES), ($e . _NOM_TEMPORAIRES_ACCESSIBLES) ); $GLOBALS['dossier_squelettes'] = $e.'squelettes'; if (is_ readable($f = $e._NOM_PERMANENTS_INACCESSIBLES._NOM_CONFIG.'.php')) include($f); } ?>
  1. Mes sites étant hostés par des hebergeurs utilisants alternc
    je fais pointer mes urls vers la racine de mon hebergement : /

  2. Je crée dans le repertoire sites des dossiers dont le
    nom est l’url de chacun de mes sites :
    /sites/machin.org
    /sites/bidule.com
    et même
    /sites/compte.hebergeur.net

si mon spip est dans un sous repertoire ça
donne :
/repertoirespip/sites/bidule.com

avec les sous repertoires
/sites/bidule.com/local
/sites/bidule.com/IMG
/sites/bidule.com/config
/sites/bidule.com/tmp
/sites/bidule.com/squelettes etc…

7.je me rends à l’url d chacun de mes repertoires :
ex : machin.org
j’ai le message
Site en travaux
Ce site n’est pas encore configuré. Revenez plus tard…

  1. je me rends à machin.org/ecrire pour commencer
    l’installation

  2. Le système crée des tables nom_site_xxxx pour chacun
    des sites

VOilà - je crois que c’est tout. C’est pas hyper évident
en lisant la doc + le code proposé semble bugguer
mais au final c’est assez simple à y regarder une fois les sueurs
passées…

J’ai configuré deux hebergements de la sorte hier, c’est top
mais ça m’a pris du temps pour trouver la bonne méthode…
et rappatrier des sites en 1.9.1 ou moins direct en 1.9.2
en plus ça m’a valut quelques sueurs froides liées aux passages de
version - mais là la doc est super + le script
qui permet de passer de iso-latin a utf-8 est top donc les conneries
sont
de mon côté.

Par contre : pour le dossier image des /sites réimportés
je n’ai pas utilisé la méthode qui préconise de changer les
adresses de dossier dans les dump directement. J’ai monté le contenu
des anciens dossiers dans le spip racine (que je n’utilise pas
en tant que tel) - je n’ai pas rencontré de conflits de noms car les
docs des différents sites sont très différents. C’est pas ultime
non plus comme choix mais aller taper dans le dump je me sentais
pas trop de faire la manip.
La méthode que j’ai utilisée là fait que les anciennes images sont dans
/IMG
et les nouvelles pour la suite sont dans
/sites/machine.org/IMG ce qui n’est pas super non plus… mais bon

Voilà.

LPG

In <ernn8s$v90$1@sea.gmane.org> Florian wrote:

Florian a =E9crit :

christian lefebvre a =E9crit :

Est-ce que tu as essay=E9 en mettant les sites ailleurs que « sous »
le
code de spip ? genre spip dans /usr/local et les sites dans
/var/www/… ?

Ce qui est s=FBr, c’est qu’il faut au moins modifier le fichier
mes_options.php propos=E9 par la documentation :

if (is_dir($e =3D _DIR_RACINE . ‹ sites/ › . $r[1]. ‹ / ›)) {

deviendrait

if (is_dir($e =3D ‹ /var/www/ › . $r[1]. ‹ / ›)) {

J’ai essay=E9 de mettre les sites ailleurs que sous le code de spip :

  • Spip dans /var/www/noyau-spip
  • Un site test mutualis=E9 dans /var/www/sites-spip-mutualises/spip-
    test

J’utilise donc, dans mes_options du noyau SPIP :

if (is_dir($e =3D ‹ /var/www/sites-spip-mutualises/ › . $r[1]. ‹ / ›)) {

La redirection Apache est la suivante :

RewriteRule ^(/spip-test)$ $1/ [R,L]
RewriteRule ^(/spip-test)/(.*)$ /var/www/noyau-spip/$2 [QSA,L]

Eh bien… =E7a marche « presque ».

La partie ecrire fonctionne, je peux ajouter des documents attach=E9s
par =

exemple, qui vont bien dans =

/var/www/sites-spip-mutualises/spip-test/IMG. Mais je ne peux plus les

t=E9l=E9charger =E0 partir de cette espace, car l’URL (lorsque je
clique su= r =

l’icone) est :

http://monsite.fr/spip-test//var/www/sites-spip-mutualises/spip-test/
IMG/pd= f/exil-fdp.pdf

La partie publique ne suit pas non plus : elle s’affiche correctement,
=E0 =

part pour les liens des documents attach=E9s. Par exemple :

http://monsite.fr/var/www/sites-spip-mutualises/spip-test/IMG/pdf/
exemple.p= df

Ouille !

C’est s=FBr que =E7a ne peut pas marcher, il faudrait un moyen de
donner = =E0 =

SPIP l’URL (et non pas le r=E9pertoire) des documents attach=E9s,
utilis=E9= e =

pour g=E9n=E9rer l’URL de ces documents.

Autre incongruit=E9 qui provient du m=EAme probl=E8me :

#DOSSIER_SQUELETTE renvoie : =

/var/www/sites-spip-mutualises/spip-test/squelettes

J’y r=E9fl=E9chis, quitte =E0 passer sur spip-dev.

Amicalement,

– =

Florian


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

Le mercredi 28 février 2007 à 10:45 +0100, Teddy Payet a écrit :

Re-donc, en lisant votre mail, est-il possible de garder mon dossier
mag tel quel sans aucune modif et l'instaurer en tant que noyau de
sites mutualisés accessible par l'adresse templedeparis.com/site_1?

oui oui, moi j'ai laissé le spip racine vide mais ce n'est pas
du tout une obligation....

LPG

Ok, c'est ce que je pensais mais dois-je écrire le htaccess à la
racine du site templedeparis.com alors que le noyau se trouve dans le
dossier mag?

Sur l'article officiel de la mutualisation
(www.spip.net/fr_article3514.html), il est dit que c'est le fichier
spip.php qui lit/relie tout ça à la redirection htaccess... Donc que
puis-je entreprendre pour la bonne redirection?

Désolé si je pose "autant" de questions mais généralement, pour une
telle application (ex: SPIP, et les autres), j'essaie de comprendre la
logique de l'ouil/fonction avant de me lancer et faire quelque chose
de bien et propre.

Le 28/02/07, Olivier THIERRY<olivier.thierry@gmail.com> a écrit :

Avec une réécriture d'URL dans le htaccess tu devrais pouvoir le faire.

Le 28/02/07, Teddy Payet <teddy.payet@gmail.com > a écrit :
> Bonjour,
>
> En lisant votre message j'ai un petit espoir:
> Actuellement, mon site (templedeparis.com) est dans un répertoire
> (/mag/). C'est le seul actuellement qui utilise SPIP. Mais je voudrais
> faire en sorte que SPIP devienne l'outil générique pour tous les
> autres sites de TdP. Je n'ai pas envie que les adresses des autres
> sections soient : templedeparis.com/mag/site_1 ou
> templedeparis.com/mag/site_2 mais
> templedeparis.com/site_1 et templedeparis.com/site_2
>
> Donc, est-ce qu'il est possible en laissant SPIP dans le dossier mag
> de mutualiser les autres sites ? Voyez-vous mon soucis ?...
>
> Re-donc, en lisant votre mail, est-il possible de garder mon dossier
> mag tel quel sans aucune modif et l'instaurer en tant que noyau de
> sites mutualisés accessible par l'adresse templedeparis.com/site_1?
>
> Le 24/02/07, lpg<lpg@melanine.org> a écrit :
> > Bonjour
> >
> > j'ai galéré hier aussi avec la mutualisation.
> > Après différents échanges sur irc
> > voici la méthode que j'ai utilisée.
> >
> > Mutualisation de spip avec différents noms de domaine dans le
> > cadre d'un herbegement mutualisé standard, sans accès root.
> >
> > j'ai testé deux méthodes
> > le spip à la racine.w
> > le spip en sous dossier du compte.
> > une seule base de données.
> >
> > 1. installation d'un spip neuf
> > 1. Création du repertoire sites
> > 3. modification du fichier htaccess de la dist :
> > - activation du rewrite base (/ -> dans le cas du spip racine /nom du
> > sous dossier -> dans le cas du sous dossier)
> > 4. création du fichier config/mes options dans lequel je mets
> > le code suivant - correction du code proposé dans la doc (Thx Fil)
> > dans les deux cas
> >
> > <?php
> >
> > if (is_dir($e = _DIR_RACINE . 'sites/' . $_SERVER['SERVER_
> > NAME']. '/')) {
> > $clean=str_replace(".","_",$_SERVER['SERVER_NAME']);
> >
> > $cookie_prefix = $table_prefix = $clean;
> >
> > define('_SPIP_
> > PATH',
> > $e . ':' .
> > _DIR_RACINE .':' .
> > _
> > DIR_RACINE .'dist/:' .
> > _DIR_RESTREINT);
> >
> > spip_
> > initialisation(
> > ($e . _NOM_PERMANENTS_INACCESSIBLES),
> > (
> > $e . _NOM_PERMANENTS_ACCESSIBLES),
> > ($e . _NOM_TEMPORAIRES_
> > INACCESSIBLES),
> > ($e . _NOM_TEMPORAIRES_ACCESSIBLES)
> > );
> >
> > $GLOBALS['dossier_squelettes'] = $e.'squelettes';
> >
> > if (is_
> > readable($f =
$e._NOM_PERMANENTS_INACCESSIBLES._NOM_CONFIG.'.php'))
> > include($f);
> > }
> >
> > ?>
> >
> > 5. Mes sites étant hostés par des hebergeurs utilisants alternc
> > je fais pointer mes urls vers la racine de mon hebergement : /
> >
> > 6. Je crée dans le repertoire sites des dossiers dont le
> > nom est l'url de chacun de mes sites :
> > /sites/machin.org
> > /sites/bidule.com
> > et même
> > /sites/compte.hebergeur.net
> >
> > si mon spip est dans un sous repertoire ça
> > donne :
> > /repertoirespip/sites/bidule.com
> >
> > avec les sous repertoires
> > /sites/bidule.com/local
> > /sites/bidule.com/IMG
> > /sites/bidule.com/config
> > /sites/bidule.com/tmp
> > /sites/bidule.com/squelettes etc...
> >
> > 7.je me rends à l'url d chacun de mes repertoires :
> > ex : machin.org
> > j'ai le message
> > Site en travaux
> > Ce site n'est pas encore configuré. Revenez plus tard...
> >
> > 8. je me rends à machin.org/ecrire pour commencer
> > l'installation
> >
> > 9. Le système crée des tables nom_site_xxxx pour chacun
> > des sites
> >
> > VOilà - je crois que c'est tout. C'est pas hyper évident
> > en lisant la doc + le code proposé semble bugguer
> > mais au final c'est assez simple à y regarder une fois les sueurs
> > passées...
> >
> > J'ai configuré deux hebergements de la sorte hier, c'est top
> > mais ça m'a pris du temps pour trouver la bonne méthode...
> > et rappatrier des sites en 1.9.1 ou moins direct en 1.9.2
> > en plus ça m'a valut quelques sueurs froides liées aux passages de
> > version - mais là la doc est super + le script
> > qui permet de passer de iso-latin a utf-8 est top donc les conneries
> > sont
> > de mon côté.
> >
> > Par contre : pour le dossier image des /sites réimportés
> > je n'ai pas utilisé la méthode qui préconise de changer les
> > adresses de dossier dans les dump directement. J'ai monté le contenu
> > des anciens dossiers dans le spip racine (que je n'utilise pas
> > en tant que tel) - je n'ai pas rencontré de conflits de noms car les
> > docs des différents sites sont très différents. C'est pas ultime
> > non plus comme choix mais aller taper dans le dump je me sentais
> > pas trop de faire la manip.
> > La méthode que j'ai utilisée là fait que les anciennes images sont dans
> > /IMG
> > et les nouvelles pour la suite sont dans
> > /sites/machine.org/IMG ce qui n'est pas super non plus... mais bon
> >
> > Voilà.
> >
> > LPG
> >
> > In <ernn8s$v90$1@sea.gmane.org> Florian wrote:
> > > Florian a =E9crit :
> > >> christian lefebvre a =E9crit :
> > >>> Est-ce que tu as essay=E9 en mettant les sites ailleurs que "sous"
> > >>> le
> > >>> code de spip ? genre spip dans /usr/local et les sites dans
> > >>> /var/www/... ?
> > >>
> > >> Ce qui est s=FBr, c'est qu'il faut au moins modifier le fichier
> > >> mes_options.php propos=E9 par la documentation :
> > >> =
> > >
> > >> if (is_dir($e =3D _DIR_RACINE . 'sites/' . $r[1]. '/')) {
> > >> =
> > >
> > >> deviendrait
> > >> =
> > >
> > >> if (is_dir($e =3D '/var/www/' . $r[1]. '/')) {
> > >
> > > J'ai essay=E9 de mettre les sites ailleurs que sous le code de spip :
> > >
> > > - Spip dans /var/www/noyau-spip
> > > - Un site test mutualis=E9 dans
/var/www/sites-spip-mutualises/spip-
> > > test
> > >
> > > J'utilise donc, dans mes_options du noyau SPIP :
> > >
> > > if (is_dir($e =3D
'/var/www/sites-spip-mutualises/' . $r[1]. '/')) {
> > >
> > > La redirection Apache est la suivante :
> > >
> > > RewriteRule ^(/spip-test)$ $1/ [R,L]
> > > RewriteRule ^(/spip-test)/(.*)$ /var/www/noyau-spip/$2 [QSA,L]
> > >
> > > Eh bien... =E7a marche "presque".
> > >
> > > La partie ecrire fonctionne, je peux ajouter des documents attach=E9s
> > > par =
> > >
> > > exemple, qui vont bien dans =
> > >
> > > /var/www/sites-spip-mutualises/spip-test/IMG. Mais je
ne peux plus les
> > > =
> > >
> > > t=E9l=E9charger =E0 partir de cette espace, car l'URL (lorsque je
> > > clique su= r =
> > >
> > > l'icone) est :
> > >
http://monsite.fr/spip-test//var/www/sites-spip-mutualises/spip-test/
> > > IMG/pd= f/exil-fdp.pdf
> > >
> > > La partie publique ne suit pas non plus : elle s'affiche correctement,
> > > =E0 =
> > >
> > > part pour les liens des documents attach=E9s. Par exemple :
> > >
http://monsite.fr/var/www/sites-spip-mutualises/spip-test/IMG/pdf/
> > > exemple.p= df
> > >
> > > Ouille !
> > >
> > > C'est s=FBr que =E7a ne peut pas marcher, il faudrait un moyen de
> > > donner = =E0 =
> > >
> > > SPIP l'URL (et non pas le r=E9pertoire) des documents attach=E9s,
> > > utilis=E9= e =
> > >
> > > pour g=E9n=E9rer l'URL de ces documents.
> > >
> > > Autre incongruit=E9 qui provient du m=EAme probl=E8me :
> > >
> > > #DOSSIER_SQUELETTE renvoie : =
> > >
> > > /var/www/sites-spip-mutualises/spip-test/squelettes
> > >
> > > J'y r=E9fl=E9chis, quitte =E0 passer sur spip-dev.
> > >
> > > Amicalement,
> > >
> > > -- =
> > >
> > > Florian
> > >
> >
> > _______________________________________________
> > liste spip
> > spip@rezo.net - désabonnement : spip-off@rezo.net
> > Infos et archives :
http://listes.rezo.net/mailman/listinfo/spip
> > Documentation de SPIP : http://www.spip.net/
> > irc://irc.freenode.net/spip
> > FAQ : http://www.spip-contrib.net/spikini/FaQ
> >
> _______________________________________________
> liste spip
> spip@rezo.net - désabonnement : spip-off@rezo.net
> Infos et archives :
http://listes.rezo.net/mailman/listinfo/spip
> Documentation de SPIP : http://www.spip.net/
> irc://irc.freenode.net/spip
> FAQ : http://www.spip-contrib.net/spikini/FaQ
>

ça va dépendre de ton hebergeur.
si tu peux faire des sous domaines facilement comme sous alternc
il suffit de les faires pointer vers la racine et juste modifier le
htacess en activivant rewrite base/ton dossier
puis tu crées des dossiers dans sites/tonurl.org

etc...

LPG

In <bb1702820702280257j6f6f16c7s736a0c6433ccd848@mail.gmail.com> Teddy
Payet wrote:

Ok, c'est ce que je pensais mais dois-je =E9crire le htaccess =E0 la
racine du site templedeparis.com alors que le noyau se trouve dans le
dossier mag?

Sur l'article officiel de la mutualisation
(www.spip.net/fr_article3514.html), il est dit que c'est le fichier
spip.php qui lit/relie tout =E7a =E0 la redirection htaccess... Donc
que puis-je entreprendre pour la bonne redirection?

D=E9sol=E9 si je pose "autant" de questions mais g=E9n=E9ralement,
pour une telle application (ex: SPIP, et les autres), j'essaie de
comprendre la logique de l'ouil/fonction avant de me lancer et faire
quelque chose de bien et propre.

Le 28/02/07, Olivier THIERRY<olivier.thierry@gmail.com> a =E9crit :

Avec une r=E9=E9criture d'URL dans le htaccess tu devrais pouvoir le
fair=

e.

Le 28/02/07, Teddy Payet <teddy.payet@gmail.com > a =E9crit :
> Bonjour,
>
> En lisant votre message j'ai un petit espoir:
> Actuellement, mon site (templedeparis.com) est dans un r=E9pertoire
> (/mag/). C'est le seul actuellement qui utilise SPIP. Mais je
> voudrais faire en sorte que SPIP devienne l'outil g=E9n=E9rique
> pour tous les autres sites de TdP. Je n'ai pas envie que les
> adresses des autres sections soient : templedeparis.com/mag/site_1
> ou templedeparis.com/mag/site_2 mais templedeparis.com/site_1 et
> templedeparis.com/site_2
>
> Donc, est-ce qu'il est possible en laissant SPIP dans le dossier
> mag de mutualiser les autres sites ? Voyez-vous mon soucis ?...
>
> Re-donc, en lisant votre mail, est-il possible de garder mon
> dossier mag tel quel sans aucune modif et l'instaurer en tant que
> noyau de sites mutualis=E9s accessible par l'adresse templedeparis.
> com/site_1?
>
> Le 24/02/07, lpg<lpg@melanine.org> a =E9crit :
> > Bonjour
> >
> > j'ai gal=E9r=E9 hier aussi avec la mutualisation.
> > Apr=E8s diff=E9rents =E9changes sur irc
> > voici la m=E9thode que j'ai utilis=E9e.
> >
> > Mutualisation de spip avec diff=E9rents noms de domaine dans le
> > cadre d'un herbegement mutualis=E9 standard, sans acc=E8s root.
> >
> > j'ai test=E9 deux m=E9thodes
> > le spip =E0 la racine.w
> > le spip en sous dossier du compte.
> > une seule base de donn=E9es.
> >
> > 1. installation d'un spip neuf
> > 1. Cr=E9ation du repertoire sites
> > 3. modification du fichier htaccess de la dist :
> > - activation du rewrite base (/ -> dans le cas du spip racine /
> > nom du sous dossier -> dans le cas du sous dossier) 4. cr=E9ation
> > du fichier config/mes options dans lequel je mets le code suivant -
> > correction du code propos=E9 dans la doc (Thx Fil) dans les deux
> > cas
> >
> > <?php
> >
> > if (is_dir($e =3D _DIR_RACINE . 'sites/' . $_SERVER['SERVER_
> > NAME']. '/')) {
> > $clean=3Dstr_replace(".","_",$_SERVER['SERVER_NAME']);
> >
> >
> > $cookie_prefix =3D $table_prefix =3D $clean;
> >
> >
> > define('_SPIP_
> > PATH',
> > $e . ':' .
> > _DIR_RACINE .':' .
> > _
> > DIR_RACINE .'dist/:' .
> > _DIR_RESTREINT);
> >
> > spip_
> > initialisation(
> > ($e . _NOM_PERMANENTS_INACCESSIBLES),
> > (
> > $e . _NOM_PERMANENTS_ACCESSIBLES),
> > ($e . _NOM_TEMPORAIRES_
> > INACCESSIBLES),
> > ($e . _NOM_TEMPORAIRES_ACCESSIBLES)
> > );
> >
> >
> > $GLOBALS['dossier_squelettes'] =3D $e.'squelettes';
> >
> > if (is_
> > readable($f =3D
$e._NOM_PERMANENTS_INACCESSIBLES._NOM_CONFIG.'.php'))
> > include($f);
> > }
> >
> > ?>
> >
> > 5. Mes sites =E9tant host=E9s par des hebergeurs utilisants
> > alternc je fais pointer mes urls vers la racine de mon
> > hebergement : /
> >
> > 6. Je cr=E9e dans le repertoire sites des dossiers dont le
> > nom est l'url de chacun de mes sites :
> > /sites/machin.org
> > /sites/bidule.com
> > et m=EAme
> > /sites/compte.hebergeur.net
> >
> > si mon spip est dans un sous repertoire =E7a
> > donne :
> > /repertoirespip/sites/bidule.com
> >
> > avec les sous repertoires
> > /sites/bidule.com/local
> > /sites/bidule.com/IMG
> > /sites/bidule.com/config
> > /sites/bidule.com/tmp
> > /sites/bidule.com/squelettes etc...
> >
> >
> > 7.je me rends =E0 l'url d chacun de mes repertoires :
> > ex : machin.org
> > j'ai le message
> > Site en travaux
> > Ce site n'est pas encore configur=E9. Revenez plus tard...
> >
> > 8. je me rends =E0 machin.org/ecrire pour commencer
> > l'installation
> >
> > 9. Le syst=E8me cr=E9e des tables nom_site_xxxx pour chacun
> > des sites
> >
> > VOil=E0 - je crois que c'est tout. C'est pas hyper =E9vident
> > en lisant la doc + le code propos=E9 semble bugguer
> > mais au final c'est assez simple =E0 y regarder une fois les
> > sueurs pass=E9es...
> >
> >
> > J'ai configur=E9 deux hebergements de la sorte hier, c'est top
> > mais =E7a m'a pris du temps pour trouver la bonne m=E9thode...
> > et rappatrier des sites en 1.9.1 ou moins direct en 1.9.2
> > en plus =E7a m'a valut quelques sueurs froides li=E9es aux
> > passages de version - mais l=E0 la doc est super + le script qui
> > permet de passer de iso-latin a utf-8 est top donc les conneries
> > sont
> > de mon c=F4t=E9.
> >
> > Par contre : pour le dossier image des /sites r=E9import=E9s
> > je n'ai pas utilis=E9 la m=E9thode qui pr=E9conise de changer les
> > adresses de dossier dans les dump directement. J'ai mont=E9 le
> > contenu des anciens dossiers dans le spip racine (que je
> > n'utilise pas en tant que tel) - je n'ai pas rencontr=E9 de
> > conflits de noms car les docs des diff=E9rents sites sont tr=E8s
> > diff=E9rents. C'est pas ultime non plus comme choix mais aller
> > taper dans le dump je me sentais pas trop de faire la manip. La
> > m=E9thode que j'ai utilis=E9e l=E0 fait que les anciennes images
> > s=

ont dans

> > /IMG
> > et les nouvelles pour la suite sont dans
> > /sites/machine.org/IMG ce qui n'est pas super non plus... mais
> > bon
> >
> > Voil=E0.
> >
> > LPG
> >
> > In <ernn8s$v90$1@sea.gmane.org> Florian wrote:
> > > Florian a =3DE9crit :
> > >> christian lefebvre a =3DE9crit :
> > >>> Est-ce que tu as essay=3DE9 en mettant les sites ailleurs
> > >>> que "=

sous"

> > >>> le
> > >>> code de spip ? genre spip dans /usr/local et les sites dans
> > >>> /var/www/... ?
> > >>
> > >> Ce qui est s=3DFBr, c'est qu'il faut au moins modifier le
> > >> fichier mes_options.php propos=3DE9 par la documentation : =3D
> > >
> > >> if (is_dir($e =3D3D _DIR_RACINE . 'sites/' . $r[1]. '/')) {
> > >> =3D
> > >
> > >> deviendrait
> > >> =3D
> > >
> > >> if (is_dir($e =3D3D '/var/www/' . $r[1]. '/')) {
> > >
> > > J'ai essay=3DE9 de mettre les sites ailleurs que sous le code
> > > de sp=

ip :

> > >
> > > - Spip dans /var/www/noyau-spip
> > > - Un site test mutualis=3DE9 dans
/var/www/sites-spip-mutualises/spip-
> > > test
> > >
> > > J'utilise donc, dans mes_options du noyau SPIP :
> > >
> > > if (is_dir($e =3D3D
'/var/www/sites-spip-mutualises/' . $r[1]. '/')) {
> > >
> > > La redirection Apache est la suivante :
> > >
> > > RewriteRule ^(/spip-test)$ $1/ [R,L]
> > > RewriteRule ^(/spip-test)/(.*)$ /var/www/noyau-spip/$2 [QSA,L]
> > >
> > > Eh bien... =3DE7a marche "presque".
> > >
> > > La partie ecrire fonctionne, je peux ajouter des documents
> > > attach=

=3DE9s

> > > par =3D
> > >
> > > exemple, qui vont bien dans =3D
> > >
> > > /var/www/sites-spip-mutualises/spip-test/IMG. Mais je
ne peux plus les
> > > =3D
> > >
> > > t=3DE9l=3DE9charger =3DE0 partir de cette espace, car l'URL (
> > > lorsqu=

e je

> > > clique su=3D r =3D
> > >
> > > l'icone) est :
> > >
> > >
http://monsite.fr/spip-test//var/www/sites-spip-mutualises/spip-test/
> > > IMG/pd=3D f/exil-fdp.pdf
> > >
> > > La partie publique ne suit pas non plus : elle s'affiche
> > > correcteme=

nt,

> > > =3DE0 =3D
> > >
> > > part pour les liens des documents attach=3DE9s. Par exemple :
> > >
> > >
http://monsite.fr/var/www/sites-spip-mutualises/spip-test/IMG/pdf/
> > > exemple.p=3D df
> > >
> > > Ouille !
> > >
> > > C'est s=3DFBr que =3DE7a ne peut pas marcher, il faudrait un
> > > moyen =

de

> > > donner =3D =3DE0 =3D
> > >
> > > SPIP l'URL (et non pas le r=3DE9pertoire) des documents
> > > attach=3DE9=

s,

> > > utilis=3DE9=3D e =3D
> > >
> > > pour g=3DE9n=3DE9rer l'URL de ces documents.
> > >
> > > Autre incongruit=3DE9 qui provient du m=3DEAme probl=3DE8me :
> > >
> > > #DOSSIER_SQUELETTE renvoie : =3D
> > >
> > > /var/www/sites-spip-mutualises/spip-test/squelettes
> > >
> > > J'y r=3DE9fl=3DE9chis, quitte =3DE0 passer sur spip-dev.
> > >
> > > Amicalement,
> > >
> > > -- =3D
> > >
> > > Florian
> > >
> > >
> >
> > _______________________________________________
> > liste spip
> > spip@rezo.net - d=E9sabonnement : spip-off@rezo.net
> > Infos et archives :
http://listes.rezo.net/mailman/listinfo/spip
> > Documentation de SPIP : http://www.spip.net/
> > irc://irc.freenode.net/spip
> > FAQ : http://www.spip-contrib.net/spikini/FaQ
> >
> _______________________________________________
> liste spip
> spip@rezo.net - d=E9sabonnement : spip-off@rezo.net
> Infos et archives :
http://listes.rezo.net/mailman/listinfo/spip
> Documentation de SPIP : http://www.spip.net/
> irc://irc.freenode.net/spip
> FAQ : http://www.spip-contrib.net/spikini/FaQ
>

Effectivement tu places le htaccess à la racine du site puis tu écris une règle qui rajoute « /mag/ » dans chaque URL qui ne le contient pas. Bon courage quand même, c’est jamais simple ces règles de réécriture …

Le 28/02/07, Teddy Payet <teddy.payet@gmail.com> a écrit :

Ok, c’est ce que je pensais mais dois-je écrire le htaccess à la
racine du site templedeparis.com alors que le noyau se trouve dans le
dossier mag?

Sur l’article officiel de la mutualisation
(www.spip.net/fr_article3514.html), il est dit que c’est le fichier
spip.php qui lit/relie tout ça à la redirection htaccess… Donc que
puis-je entreprendre pour la bonne redirection?

Désolé si je pose « autant » de questions mais généralement, pour une
telle application (ex: SPIP, et les autres), j’essaie de comprendre la
logique de l’ouil/fonction avant de me lancer et faire quelque chose
de bien et propre.

Le 28/02/07, Olivier THIERRY<olivier.thierry@gmail.com> a écrit :

Avec une réécriture d’URL dans le htaccess tu devrais pouvoir le faire.

Le 28/02/07, Teddy Payet <teddy.payet@gmail.com > a écrit :

Bonjour,

En lisant votre message j’ai un petit espoir:
Actuellement, mon site (templedeparis.com) est dans un répertoire
(/mag/). C’est le seul actuellement qui utilise SPIP. Mais je voudrais
faire en sorte que SPIP devienne l’outil générique pour tous les
autres sites de TdP. Je n’ai pas envie que les adresses des autres
sections soient : templedeparis.com/mag/site_1 ou
templedeparis.com/mag/site_2 mais
templedeparis.com/site_1 et templedeparis.com/site_2

Donc, est-ce qu’il est possible en laissant SPIP dans le dossier mag
de mutualiser les autres sites ? Voyez-vous mon soucis ?..

Re-donc, en lisant votre mail, est-il possible de garder mon dossier
mag tel quel sans aucune modif et l’instaurer en tant que noyau de
sites mutualisés accessible par l’adresse templedeparis.com/site_1?

Le 24/02/07, lpg<lpg@melanine.org > a écrit :

Bonjour

j’ai galéré hier aussi avec la mutualisation.
Après différents échanges sur irc
voici la méthode que j’ai utilisée.

Mutualisation de spip avec différents noms de domaine dans le
cadre d’un herbegement mutualisé standard, sans accès root.

j’ai testé deux méthodes
le spip à la racine.w
le spip en sous dossier du compte.
une seule base de données.

  1. installation d’un spip neuf
  2. Création du repertoire sites
  3. modification du fichier htaccess de la dist :
  • activation du rewrite base (/ → dans le cas du spip racine /nom du
    sous dossier → dans le cas du sous dossier)
  1. création du fichier config/mes options dans lequel je mets
    le code suivant - correction du code proposé dans la doc (Thx Fil)
    dans les deux cas
<?php if (is_dir($e = _DIR_RACINE . 'sites/' . $_SERVER['SERVER_ NAME']. '/')) { $clean=str_replace(".","_",$_SERVER['SERVER_NAME']); $cookie_prefix = $table_prefix = $clean; define('_SPIP_ PATH', $e . ':' . _DIR_RACINE .':' . _ DIR_RACINE .'dist/:' . _DIR_RESTREINT); spip_ initialisation( ($e . _NOM_PERMANENTS_INACCESSIBLES), ( $e . _NOM_PERMANENTS_ACCESSIBLES), ($e . _NOM_TEMPORAIRES_ INACCESSIBLES), ($e . _NOM_TEMPORAIRES_ACCESSIBLES) ); $GLOBALS['dossier_squelettes'] = $e.'squelettes'; if (is_ readable($f =

$e._NOM_PERMANENTS_INACCESSIBLES._NOM_CONFIG.‹ .php ›))

include($f);
}

?>

  1. Mes sites étant hostés par des hebergeurs utilisants alternc
    je fais pointer mes urls vers la racine de mon hebergement : /

  2. Je crée dans le repertoire sites des dossiers dont le
    nom est l’url de chacun de mes sites :
    /sites/machin.org
    /sites/bidule.com
    et même
    /sites/compte.hebergeur.net

si mon spip est dans un sous repertoire ça
donne :
/repertoirespip/sites/bidule.com

avec les sous repertoires
/sites/bidule.com/local
/sites/bidule.com/IMG
/sites/bidule.com/config
/sites/bidule.com/tmp
/sites/bidule.com/squelettes etc…

7.je me rends à l’url d chacun de mes repertoires :
ex : machin.org
j’ai le message
Site en travaux
Ce site n’est pas encore configuré. Revenez plus tard…

  1. je me rends à machin.org/ecrire pour commencer
    l’installation

  2. Le système crée des tables nom_site_xxxx pour chacun
    des sites

VOilà - je crois que c’est tout. C’est pas hyper évident
en lisant la doc + le code proposé semble bugguer
mais au final c’est assez simple à y regarder une fois les sueurs
passées…

J’ai configuré deux hebergements de la sorte hier, c’est top
mais ça m’a pris du temps pour trouver la bonne méthode…
et rappatrier des sites en 1.9.1 ou moins direct en 1.9.2
en plus ça m’a valut quelques sueurs froides liées aux passages de
version - mais là la doc est super + le script
qui permet de passer de iso-latin a utf-8 est top donc les conneries
sont
de mon côté.

Par contre : pour le dossier image des /sites réimportés
je n’ai pas utilisé la méthode qui préconise de changer les
adresses de dossier dans les dump directement. J’ai monté le contenu
des anciens dossiers dans le spip racine (que je n’utilise pas
en tant que tel) - je n’ai pas rencontré de conflits de noms car les
docs des différents sites sont très différents. C’est pas ultime
non plus comme choix mais aller taper dans le dump je me sentais
pas trop de faire la manip.
La méthode que j’ai utilisée là fait que les anciennes images sont dans
/IMG
et les nouvelles pour la suite sont dans
/sites/machine.org/IMG ce qui n’est pas super non plus… mais bon

Voilà.

LPG

In <ernn8s$v90$1@sea.gmane.org> Florian wrote:

Florian a =E9crit :

christian lefebvre a =E9crit :

Est-ce que tu as essay=E9 en mettant les sites ailleurs que « sous »
le
code de spip ? genre spip dans /usr/local et les sites dans
/var/www/… ?

Ce qui est s=FBr, c’est qu’il faut au moins modifier le fichier
mes_options.php propos=E9 par la documentation :

if (is_dir($e =3D _DIR_RACINE . ‹ sites/ › . $r[1]. ‹ / ›)) {

deviendrait

if (is_dir($e =3D ‹ /var/www/ › . $r[1]. ‹ / ›)) {

J’ai essay=E9 de mettre les sites ailleurs que sous le code de spip :

  • Spip dans /var/www/noyau-spip
  • Un site test mutualis=E9 dans
    /var/www/sites-spip-mutualises/spip-
    test

J’utilise donc, dans mes_options du noyau SPIP :

if (is_dir($e =3D
‹ /var/www/sites-spip-mutualises/ › . $r[1]. ‹ / ›)) {

La redirection Apache est la suivante :

RewriteRule ^(/spip-test)$ $1/ [R,L]
RewriteRule ^(/spip-test)/(.*)$ /var/www/noyau-spip/$2 [QSA,L]

Eh bien… =E7a marche « presque ».

La partie ecrire fonctionne, je peux ajouter des documents attach=E9s
par =

exemple, qui vont bien dans =

/var/www/sites-spip-mutualises/spip-test/IMG. Mais je
ne peux plus les

t=E9l=E9charger =E0 partir de cette espace, car l’URL (lorsque je
clique su= r =

l’icone) est :

http://monsite.fr/spip-test//var/www/sites-spip-mutualises/spip-test/

IMG/pd= f/exil- fdp.pdf

La partie publique ne suit pas non plus : elle s’affiche correctement,
=E0 =

part pour les liens des documents attach=E9s. Par exemple :

http://monsite.fr/var/www/sites-spip-mutualises/spip-test/IMG/pdf/

exemple.p= df

Ouille !

C’est s=FBr que =E7a ne peut pas marcher, il faudrait un moyen de
donner = =E0 =

SPIP l’URL (et non pas le r=E9pertoire) des documents attach=E9s,
utilis=E9= e =

pour g=E9n=E9rer l’URL de ces documents.

Autre incongruit=E9 qui provient du m=EAme probl=E8me :

#DOSSIER_SQUELETTE renvoie : =

/var/www/sites-spip-mutualises/spip-test/squelettes

J’y r=E9fl=E9chis, quitte =E0 passer sur spip-dev.

Amicalement,

– =

Florian


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives :
http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives :
http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ