ATTENTION , cet article nécessite d’utiliser une version stable > à 2.0
Les prérequis (au 1er janvier 2008) :
- posséder un nom de domaine disponible
- avoir la possibilité de modifier la configuration apache
Dans l’exemple suivant on supposera que l’on cherche à mettre la ferme sur le site GrmlEU [1]
Installation SPIP
Installer un SPIP (une version récente est recommandée). Pour la suite de l’exercice on supposera que le SPIP est installé dans le répertoire «/home/grml/public_html/».
Installation plugin mutualisation
Installer le plugin Mutualisation [2] (il est plus simple de ne pas le mettre dans le répertoire plugin) . Nous avons donc «/home/grml/public_html/mutualisation»
Configuration apache
Modifier la configuration apache
Si vous êtes sur apache2 il faut créer un fichier grml.eu.
etc/apache2/sites-available# more grml.eu
<VirtualHost *>
ServerName grml.eu
ServerAlias *.grml.eu
DocumentRoot /home/grml/public_html
</VirtualHost>
Ce qui veut dire que tous les sous domaines de grml.eu vont pointer vers le répertoire «/home/grml/public_html».
Ensuite il faut faire une lien symbolique pour que le domaine soit actif
cd etc/apache2/sites-enable
ln -s /etc/apache2/sites-available/grml.eu grml.eu
Enfin il faut prendre en compte ces changements
/etc/init.d/apache2 force-reload
Configuration DNS
Il faut maintenant que lorsque l’on tape grml.eu, il redirige vers l’adresse ip du serveur
voici la config utilisée chez gandi



Configuration de la mutualisation
Copier le fichier /home/grml/public_html/mutualisation/mes_options.php.txt vers «/home/grml/public_html/config» et enlevez l’extension «.txt» . Ouvrez ce fichier et procédez au paramétrage.
Pour vous aider voici le fichier de config utilisé sur scriibe
<?php
$GLOBALS['taille_des_logs']=1000;
#parametrage a faire
$monTld="scriibe.net";
require _DIR_RACINE.'mutualisation/mutualiser.php';
define ('_ID_WEBMESTRES', 1);
$site = $_SERVER['HTTP_HOST'];
$type_urls = 'propres2'; # par defaut, surchargeable ci-dessous
switch($site) {
case "www.$monTld":
$site=$monTld;
break;
case 'www.spip-blog.net':
$site='spipblog';
break;
case 'spip-blog.net':
$site='spipblog';
break;
default :
$site = str_replace('.scriibe.net', '', $site);
break ;
}
define ('_SITES_ADMIN_MUTUALISATION', ''); // ici sites esclaves
define ('_INSTALL_SERVER_DB', 'mysql');
define ('_INSTALL_HOST_DB', 'plouf');
define ('_INSTALL_USER_DB_ROOT', 'plouf');
define ('_INSTALL_PASS_DB_ROOT', 'plouf');
define ('_INSTALL_TABLE_PREFIX', 'spip');
define ('_INSTALL_NAME_DB', 'scr_'.prefixe_mutualisation($site));
if ($site != "$monTld") {
demarrer_site($site,
array(
'creer_site' => true,
'creer_base' => true,
'code' => 'plouf',
'url_img_courtes' => true,
'creer_user_base' => true,
'mail' => 'ben.spip@gmail.com'
)
);
}
else {
$GLOBALS['dossier_squelettes']=":mutualisation";
}
?>
pour celui sur GrmlEU
<?php
if (!defined("_ECRIRE_INC_VERSION")) return;
require _DIR_RACINE.'mutualisation/mutualiser.php';
$site = str_replace('www.', '', $_SERVER['HTTP_HOST']);
if ($site != $_SERVER['HTTP_HOST']) {
include_spip('inc/headers');
redirige_par_entete('http://'.$site.'/');
}
define ('_INSTALL_SERVER_DB', 'mysql');
define ('_INSTALL_HOST_DB', 'localhost');
define ('_INSTALL_USER_DB', 'plouf');
define ('_INSTALL_PASS_DB', 'plouf');
define ('_INSTALL_NAME_DB', 'grml');
#define ('_INSTALL_TABLE_PREFIX', 'spip');
define ('_SITES_ADMIN_MUTUALISATION', 'grml.eu');
demarrer_site($site,
array(
'creer_site' => true,
'creer_base' => false,
'creer_user_base' => false,
'mail' => 'ben.spip@gmail.com',
'code' => 'ecureuil',
'table_prefix' => true,
'cookie_prefix' => true,
'repertoire' => 'sites',
'url_img_courtes' => true,
'url_creer_base' => ''
)
);
?>
On peut noter que pour scriibe, une base et un utilisateur mysql sont créés pour chaque site. Par contre sur GrmlEU, il n’y a qu’un user et qu’une seule base, avec un préfixe différent pour les tables de chaque site.
Discussions by date of activity
47 discussions
une question bete,
le plugin fonctionne tres bien sur ma machine sauf dans un cas qui me dérange beaucoup, celui du www.
alors suis je une trume ? ou ais je raté quelque chose ?
Reply to this message
Bonjour,
Je voudrais mettre en place un site regroupant plusieurs marchands de chevaux, on pourrais accéder à ce site suivant 2 methode soit :
- www.<nom du marchand>.com et on aurait acces seulement aux articles liées à ce marchand (il a une rubrique perso ou sont tous ses articles)
- www.<nom du site>.com ou on aurait acces à l’ensemble des articles.
est-ce possible avec le plugin mutualisation ? et si oui comment ?
Merci d’avance pour les réponses
Bonjour, non la mutualisation ne vas pas spécialement t’aider, c’est une question SPIP et il y a plusieurs solutions possibles, va demander de l’aide sur la liste SPIP
Cet article et exemple traite uniquement du cas site1.nomdedomaine.com , site2.nomdedomaine.com, site3.nomdedomaine.com ....
Salut,
Merci pour cette contribution, juste une remarque le titre “ferme à SPIP” n’est pas explicite au premier abord.
Bonjour, que proposes tu comme titre ? ;-)
Silo à SPIP pourrait être sympa
et hop ! Je rebondis là dessus :
Derrière, par le biais d’une redirection 301 ? Ca n’est toujours pas possible ?
Ou alors faut-il installer sa ferme sur un dédié et avoir les clés du-dit dédié ???
Reply to this message
Bonjour,
Le lien GrmlEU donne l’erreur : “Fatal error: Call to undefined function: generer_url_article() in /home/grml/public_html/ecrire/public/composer.php(51) : eval()’d code on line 62”.
OK c est mis a jour, merci perline
Reply to this message
Salut et merci pour ce superbe plugin !
Comment je fais pour avoir:
- quelques plugins mutualisés (réponse: à la racine dans plugins)
- pour un site donné, ses propres plugins
Sur IRC, _fil_ m’a dit
dir_plguins => sites/ccc/plugins
Après, le débat a tourné sur l’amateurisme des spipiens ;-)
Je mets ça dans mes_options ?
Reply to this message
dans l’intro est indiqué :
“Installer le plugin Mutualisation (il est plus simple de ne pas le mettre dans le répertoire plugin) . Nous avons donc « /home/grml/public_html/mutualisation”
c’est pas clair voire contradictoire.
gnn ?
en fait tu peux soit l’installer dans le repertoire plugin soit à la racine ... mais comme ce plugin ne doit pas être désactivé, il est préférable de l’installer à la racine .
donc en résumé il est préférable de l’installer dans /home/grml/public_html/mutualisation plutôt que dans /home/grml/public_html/plugins/mutualisation (l’installation du spip étant dans /home/grml/public_html/ )
c’est plus clair comme cela ?
Reply to this message
Oo que je suis content un article pour mutualisé spip; depuis le temps que je me bagarre avec malgré le carnet et bien c’est pareil...
Je suis nul.
Donc j’ai installé ubuntu avec tous keskifo ;)
l’adresse : www.bachant.info pointe sur la machine d’ailleurs j’ai la page d’accueil de la mutu.
mais lorsque je fait www.test.bachant.info j’arrive a rien .Serveur introuvable
je pense que c’est le fichier mes_options que je ne sais pas comprendre le voici donc en copie.
Si vous pouvez faire en sorte que mon ecureuil et des jeunes j’en serais ravie merci
@micalement stéphane
j’ai opté pour scriibe, car une base et un utilisateur mysql sont créés pour chaque
l’idée et de pouvoir démultiplier les sites de l’association et que chacun puiseent y trifouiller comme bon lui semble....
Reply to this message
Ça marche sur quelle version?
celle ci par exemple mais attention je le répète, ce n’est pas une version stable
Reply to this message
Add a comment
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Follow the comments:
|
