mutualisation

Merci à Grégoire et Matthieu d’avoir pris le temps de me répondre.

Effectivement, je pense que le problème venait des majuscules à SITES, car j’ai nommé site1 et site2 pour l’exemple, mais j’ai utilisé les noms des sites en réalité.

J’ai du tout remettre en ligne hier soir comme c’était à l’origine. Donc, il me faut tout reprendre à zéro.

Aussi, vais-je tenter la mutualisation.

Mais, je ne suis pas sûre de tout comprendre.

Mon arborescence doit ressemble à cela :

spip/sites/monsite1/config/

spip/sites/monsite1/IMG/

spip/sites/monsite1/tmp/
spip/sites/monsite1/local

spip/sites/monsite2/config/

spip/sites/monsite2/IMG/

spip/sites/monsite2/tmp/
spip/sites/monsite2/local

``

- Installer les fichiers de mutualisation : spip/mutualisation/ (tous les fichiers listés sur la zone et sachant que mes_options sera ensuite déplacé dans spip/config

- Dupliquez le fichier htaccess.txten.htaccess``

``

- Créez le fichier spip/config/mes_options.php en vous inspirant du contenu présent dans le fichier mutualisation//mes_options.php.txt

Et c’est là que je m’embrouille un peu, car je trouve ensuite :

Créer un fichier mes_options dans spip/config/mes_options.php

<?php require _DIR_RACINE.'ecrire/inc/mutualiser.php'; demarrer_site($_SERVER['HTTP_HOST']); ?>

Pourriez-vous éclaircir pour moi ce point ? Je ne voudrais pas risquer de bloquer le site une journée de plus… Je préfère avoir les idées claires avant de démarrer…

MErci pour votre aide et désolée d’abuser ainsi de votre gentillesse.

Camilou

``

camilou a écrit :

Merci à Grégoire et Matthieu d'avoir pris le temps de me répondre.

Effectivement, je pense que le problème venait des majuscules à SITES, car j'ai nommé site1 et site2 pour l'exemple, mais j'ai utilisé les noms des sites en réalité.

J'ai du tout remettre en ligne hier soir comme c'était à l'origine. Donc, il me faut tout reprendre à zéro.

Aussi, vais-je tenter la mutualisation.

Mais, je ne suis pas sûre de tout comprendre.

Mon arborescence doit ressemble à cela :

|spip/sites/monsite1/config/|

|spip/sites/monsite1/IMG/|

|spip/sites/monsite1/tmp/|
|spip/sites/monsite1/local|

|spip/sites/monsite2/config/|

|spip/sites/monsite2/IMG/|

|spip/sites/monsite2/tmp/|
|spip/sites/monsite2/local|

||

|- Installer les fichiers de mutualisation : spip/mutualisation/ (tous les fichiers listés sur la zone et sachant que mes_options sera ensuite déplacé dans spip/config|

|- Dupliquez le fichier |htaccess.txt| en |.htaccess||

||

|- |Créez le fichier |spip/config/mes_options.php| en vous inspirant du contenu présent dans le fichier mutualisation//mes_options.php.txt

Et c'est là que je m'embrouille un peu, car je trouve ensuite :

|Créer un fichier mes_options dans spip/config/mes_options.php|

<?php

    require _DIR_RACINE.'ecrire/inc/mutualiser.php';

    demarrer_site($_SERVER['HTTP_HOST']);

?>

Pourriez-vous éclaircir pour moi ce point ?

||

J'ai corrigé la ligne ce matin dans 'la mutualisation facile' il y avait une coquille.

Si le pseudo plugin de mutualisation est bien installé dans /mutualisation, il faut mettre :
||

    require _DIR_RACINE.'mutualisation/mutualiser.php';

    demarrer_site($_SERVER['HTTP_HOST']);

||Mais, regardez les options possibles avant.
:
Par ailleurs, le .htaccess que vous avez cité est pour un site genre : http://mon_site.tld/spip/
: rewribebase /spip/

Dans le cas d'un site : http://mon_site.tld/ c'est rewritebase / qu'il faut mettre (spip est à la racine et pas dans un dossier)

Je vous joins mon mes_options.php actuel (spip 193 svn) pour vous en inspirer, mais il mutualise des dossiers dans le répertoire spip, (pas des noms de domaines) mais ça peut vous aider :

<?php
// pas de php3...
@define('_EXTENSION_PHP', '');

// webmestres
define('_ID_WEBMESTRES', '1:2');
#define('_FEED_GLOBALS', true);

$type_urls = 'propres'; //pour tests mutu !

// mutualisation
if (!defined("_ECRIRE_INC_VERSION")) return;
require _DIR_RACINE . 'mutualisation/mutualiser.php';

//spip_log("Passage avec " . $_SERVER['REQUEST_URI'], 'mutuuuu');

if (
        preg_match(',^/spip/([\.a-zA-Z0-9_-]+)/,', $_SERVER['REQUEST_URI'], $r)
        AND !is_dir(_DIR_RACINE . $r[1])
) {
       // prefixe des tables
    $GLOBALS['table_prefix'] = 'spip';
       // rep plugin
    //define('_DIR_PLUGINS', _DIR_RACINE . 'sites/' . $r[1] . '/plugins/');
       // rep aide
    define('_DIR_AIDE', _DIR_RACINE . _NOM_TEMPORAIRES_INACCESSIBLES . "cache/aide/");
           // params installation
    define ('_INSTALL_HOST_DB', 'localhost');
    define ('_INSTALL_USER_DB', 'marcimat');
    define ('_INSTALL_PASS_DB', '********votre_mdp*********');
    define ('_INSTALL_NAME_DB', 'mutu_'.prefixe_mutualisation($r[1]));
    define ('_INSTALL_TABLE_PREFIX', 'spip');
       define ('_SITES_ADMIN_MUTUALISATION', 'http://naya/spip/');
   
    demarrer_site($r[1],
        array(
            'cookie_prefix' => true,
            'table_prefix' => false,
            'creer_site' => true,
            'creer_base' => true,
            'repertoire' => 'sites',
            'mail' => '*****votre mail*******'
        )
    );
}

$GLOBALS['dossier_squelettes'] .= ':mutualisation'; // pour page ecrire?exec=mutualisation

?>

Et mon .htaccess (mes sites sont sous http://naya/spip/*)
Vous, ce serait plutot simplement rewritebase / et rien d'autre.

RewriteBase /spip/

# ou si SPIP dans le dossier SPIP
RewriteCond %{REQUEST_URI} !^/spip/(config|dist|ecrire|IMG|oo|plugins|sites|squelettes|tmp|lib|local|mutualisation)/(.*)
RewriteRule ^[^/]+/(.*) /spip/$1 [QSA,L]

Bien à vous,
MM.