ZAO / Dakar / Configuration / Spip

/!\ Document en cours de rédaction

Comment créer un VZ-spip mutualisé

Schéma d'explication

             +-------------------------------------------------------------------------+  
+------+     |  +--------------------+    +-------------------+  +-------------------+ |                                              
|      |<-------|     ReverseProxy   |    | spip.sn.auf.org   |  |   miroirs         | |             
|client|------->|      www-dakar    <------>                 <---->                  | |                 
|web   |     |  |       vz202        |    |     vz217         |  |    vz201          | |  
+------+     |  +--------------------+    +-------------------+  +-------------------+ |
             |                 ovz-dakar.sn.auf.org                                    |
             +-------------------------------------------------------------------------+ 

Le reverse-proxy permet:

Dans ce cas, on donne au serveur spip une adresse privée sur le même réseau que le miroir (pour les mises à jour) et le proxy inverse. Seul le proxy inverse et le miroirs pour accéder au web.

Installation

deb http://miroirs.refer.sn/debian-backports lenny-backports main
#ensuite
aptitude update; aptitude install spip
apt-cache policy spip
spip:
  Installed: 2.0.9-1~bpo50+1
  Candidate: 2.0.9-1~bpo50+1
  Version table:
 *** 2.0.9-1~bpo50+1 0
          1 http://miroirs.refer.sn lenny-backports/main Packages
        100 /var/lib/dpkg/status

Le moteur spip 2.0.9-1 sera installé est l'arboresence est la suivante:

spip:/var/lib/spip# tree -L 1
.
|-- IMG
|-- config -> /usr/share/spip/config
|-- ecrire -> /usr/share/spip/ecrire
|-- index.php -> /usr/share/spip/index.php
|-- local
|-- mutualisation -> /usr/share/spip/mutualisation
|-- plugins
|-- prive -> /usr/share/spip/prive
|-- rien.gif -> /usr/share/spip/rien.gif
|-- sites
|-- spip.php -> /usr/share/spip/spip.php
`-- squelettes-dist

Pour l'ajout d'un site

spip:/# spip_add_site monsite.refer.sn 
Creating site monsite.refer.sn...
Directories and files created, you may add hosts for this site in:
   /etc/spip/sites/monsite.refer.sn.php

Par défaut on aura les répertoires suivants

spip:/var/lib/spip/sites# tree -L 2 monsite.refer.sn/
monsite.refer.sn/
|-- IMG
|-- config
|   `-- chmod.php
|-- local
|-- plugins
|   `-- common -> /var/lib/spip/plugins
|-- squelettes
`-- tmp

Pour supprimer le site

Encore plus facile, mais faites les sauvegardes avant.

spip:/var/lib/spip# spip_rm_site monsite.refer.sn
Deleting site monsite.refer.sn....
Directories and files removed

Comment migrer un site existant vers le spip mutualisé

Récupérer la bdd sur l'ancien serveur

mysqldump spip_test > database.sql

Créer une nouvelle base sur mysql.sn.auf.org

mysql >
create database Example;
grant select, insert, update, delete, create, drop, alter
on Exemple.*
to 'spip_test'@'spip.sn.auf.org' #ou 'spip_test'@'adresse_ip'
identified by 'mdpass';

# mysql -uspip_test -pmdpass spip_test < database.sql

spip_add_site www.monsite.sn

<VirtualHost *>
        Servername www.monsite.sn
        ServerAdmin webmestre@refer.sn
        DocumentRoot /usr/share/spip/
        # pour que les sous répertoires ne s'affiche pas comme
        # www.monsite.sn/sites/www.monsite.sn/IMG
        Alias /squelettes /var/lib/spip/sites/www.monsite.sn/squelettes/
        Alias /IMG /var/lib/spip/sites/www.monsite.sn/IMG/
        Alias /plugins /var/lib/spip/sites/www.monsite.sn/plugins/
        <Directory /etc/spip/sites-files/www.monsite.sn>
                DirectoryIndex index.php
                Order allow,deny
                Allow from all
                php_flag engine on
                AllowOverride FileInfo
        </Directory>

        ErrorLog syslog:daemon

        CustomLog /var/log/apache2/monsite.log combined

</VirtualHost>

/!\ Les urls propres ne marcheront pas, regarde plutôt du coté de .htaccess

sed -i "s#MesImages#IMG#g squelettes/**"

    <link href=\"".$prefix."/"."feuilleStyle.css\" type=\"text/css\" rel=\"stylesheet\" />
    <link href=\"".$prefix."/"."spip_style.css\"  type=\"text/css\" rel=\"stylesheet\" />
    <link href=\"".$prefix."/"."habillage.css\"   type=\"text/css\" rel=\"stylesheet\" />

Gestion des dossiers/plugins

Chaque site possède un sous répertoire plugin. Pour le moment, les plugins doivent y être copié par scp. A étudier le cas d'accès FTP "sécurisé"

Listé les sites mutualisés

http://w3.refer.sn/ecrire/?exec=mutualisation

/!\ Après chaque mise à jour du paquet Débian, il faut se connecté sur chaque site pour lancer la mise à jour de la base de données

Liens utiles

http://www.spip-contrib.net/Carnet-Mutualisation

ZAO/Dakar/Configuration/Spip (dernière édition le 2012-01-20 10:07:40 par NdimbyAndriantsoavina)