Travail préparatoire :
- Lire la doc officielle de SPIP sur la mutualisation facile
- Lire Bénéficier de la mutualisation du code de SPIP
Configuration de l’hébergement
Les fichiers de SPIP mutualisé
Il s’agit de placer sur l’hébergement :
- SPIP 2 [1]
- Le faux plugin Mutualisation au même niveau que SPIP dans le dossier mutualisation/
- De créer un dossier sites/ au même niveau que les autres
- De créer un dossier plugins/ lui aussi à la racine du site SPIP
- De mettre en place le fichier config/mes_options.php permettant de mutualiser SPIP
Contenu du fichier config/mes_options.php
<?php
require _DIR_RACINE.'mutualisation/mutualiser.php';
$site = str_replace('www.', '', $_SERVER['HTTP_HOST']);
$site = str_replace('ww2.', '', $site);
demarrer_site($site,
array(
'creer_site' => true,
'cookie_prefix' => false,
'table_prefix' => false,
'creer_base' => false,
'creer_user_base' => false,
'code' => 'ecureuil',
'mail' => 'mutualisation@pyrat.net'
)
);
#$GLOBALS['type_urls'] = 'propres2';
include_spip('inc/vieilles_defs'); // Nécessaire pour les vieux plugins
define('_ID_WEBMESTRES', '1:2:3:4'); // Pour que les premiers auteurs soient aussi des Webmestre (accès à la config de SoyezCreateurs)
?>
Les lignes :
$site = str_replace('www.', '', $_SERVER['HTTP_HOST']);
$site = str_replace('ww2.', '', $site);
permettent de considérer que www.nomdedomaine.tld et ww2.nomdedomaine.tld sont un seul et même site (équivalent à nomdedomaine.tld seul).
Le mail est bien sûr à changer pour que ce soit vous qui soyez prévenus lorsqu’il y a une installation.
Contrairement à un hébergement dédié, nous ne pouvons pas demander au script de mutualisation de créer la base de données.
Du coup, il va falloir passer par le pannel d’administration d’OVH pour créer :
- l’entrée de nom de domaine en la faisant pointer sur la racine de SPIP mutualisé.
- la base de données à utiliser : une par site mutualisé [2].
Configuration des domaines dans le pannel OVH
Il s’agit de déclarer un sous domaine par site, en indiquant que chaque sous domaine pointe vers le dossier physique de l’hébergement où se trouve la racine du code source mutualisé de SPIP.
Dans cet exemple, il s’agit de /web/spip/sites
Il faut aussi créer une base de données par site à héberger.
Ne pas oublier de mettre un mot de passe à chaque base : il servira au moment de l’installation des sites. Dans ce tableau, il faut aussi noter le nom de la base et le nom du serveur (ici : mysql5-40).
Installation d’un site mutualisé
En laissant à OVH de propager les modifications (création du sous domaine et création et mot de passe de la base de données), il suffit ensuite de se rendre à l’adresse du sous domaine dans votre navigateur : http://sousdomaine.domaine.tld/
Vous avez alors la mire d’installation de la mutualisation de SPIP.
Le code est renseigné dans le fichier config/mes_options.php : ici, c’est ecureuil.
La suite est du type assistant avec des questions à cliquer (un seul choix).
Enfin, on arrive dans une installation classique de SPIP où renseigner les informations de connexion à la base et le compte administrateur.
Plugins et squelettes ?
Les plugins vont être communs à tous les sites. Plus exactement, c’est la liste des plugins disponibles qui sera commune. Chaque site sera libre d’activer les plugins qu’il choisira dans cette liste.
Squelettes
Les squelettes sont à placer dans le sous dossier de sites qui a été créé automatiquement par la mutualisation : racineSPIP/sites/nomdedomaine/squelettes/
S’il y a un mes_options spécifique au site, il doit être placé dans le dossier racineSPIP/sites/nomdedomaine/config/
.
Attention, les globales doivent être déclarée explicitement comme telles.
Donc, il ne faut pas écrire : $type_urls = 'propres2';
mais $GLOBALS['type_urls'] = 'propres2';