Outils pour utilisateurs

Outils du site


services:v2.chapril.org

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
services:v2.chapril.org [2026/04/11 17:40] – supprimée - modification externe (Date inconnue) 127.0.0.1services:v2.chapril.org [2026/04/11 17:40] (Version actuelle) – ↷ Liens modifiés en raison d'un déplacement. pitchum
Ligne 1: Ligne 1:
 +======= Service v2.chapril.org =======
 +
 +====== Introduction ======
 +
 +La version 2 utilise le logiciel de gestion de contenu SPIP.
 +SPIP peut être installé directement à partir du fichier Zip de téléchargement ou avec un paquet Debian.
 +C'est cette dernière solution qui a été retenue.
 +Mais lorsque le paquet fournit par Debian n'est pas suffisamment à jour, nous savons comment [[services:www.chapril.org:debianize|construire un paquet SPIP]] nous-mêmes.
 +L'empaqueteur a fait un gros travail pour proposer SPIP dans sa version mutualisée : le même moteur de SPIP peut être utilisé pour des sites indépendants.
 +
 +La configuration d'un SPIP mutualisé est plus complexe qu'un SPIP normal ((Voir l’article //[[https://www.spip.net/fr_article3811.html|Mutualisation : Un SPIP pour plusieurs sites]]//.)) mais le paquet Debian mâche énormément le travail.
 +Le document fournit dans le paquet indique la marche à suivre : ''/usr/share/doc/spip/README.Debian''.
 +
 +====== Installation ======
 +
 +On commence par l'installation du paquet :
 +<code bash>
 +apt-get install spip
 +</code>
 +
 +Et on installe aussi ''php-gd'' pour la gestion des vignettes :
 +<code bash>
 +apt-get install php-gd
 +</code>
 +
 +Pour mémoire, nous avons eu quelques frissons lors d'une mise à jour de ''php7.0'' à ''php7.3'' (page blanche ou grise sous SPIP).
 +Cela venait d'un module PHP manquant.
 +Il faut vérifier la présence du module ''php-xml'' notamment.
 +
 +===== Apache =====
 +
 +Comme chaque site SPIP a son propre nom de domaine, on ouvre le fichier ''/etc/apache2/conf-available/spip.conf'' pour commenter la première ligne :
 +<code apache /etc/apache2/conf-available/spip.conf>
 +#Alias /spip /usr/share/spip
 +</code>
 +
 +On copie le fichier d'exemple de configuration ''/usr/share/doc/spip/apache2.conf'' dans le répertoire des sites d'Apache avec le nom qui va bien (ici ''v2.chapril.org'') :
 +<code bash>
 +cp /usr/share/doc/spip/apache2.conf /etc/apache2/sites-available/v2.chapril.org.conf
 +</code>
 +
 +On édite ''/etc/apache2/sites-available/v2.chapril.org.conf''.
 +
 +On indique les bonnes valeurs pour ''ServerName'' et ''ServerAdmin'' et on remplace toutes les occurrences de ''default'' dans ''/var/lib/spip/sites/default/'' par le nom du domaine.
 +
 +On change également la syntaxe des logs pour être en harmonie avec les autres sites du serveur :
 +<code apache>
 +ErrorLog ${APACHE_LOG_DIR}/v2.chapril.org/v2.chapril.org-error.log
 +CustomLog ${APACHE_LOG_DIR}/v2.chapril.org/v2.chapril.org-access.log combined-proxy
 +</code>
 +
 +Par rapport à l'exemple fourni, il manque une directive ''Require all granted'' pour qu'Apache accède aux répertoires ''IMG/'' et ''local/''.
 +
 +On remplace cette partie de l'exemple :
 +<code apache>
 +<Directory /var/lib/spip/sites/v2.chapril.org/IMG>
 +   php_flag engine Off
 +</Directory>
 +</code>
 +
 +Par :
 +<code apache>
 +<Directory /var/lib/spip/sites/v2.chapril.org/IMG>
 +   php_flag engine Off
 +   Require all granted
 +</Directory>
 +<Directory /var/lib/spip/sites/v2.chapril.org/local>
 +   php_flag engine Off
 +   Require all granted
 +</Directory>
 +</code>
 +
 +Enfin, pour ne pas avoir à gérer un fichier ''.htaccess'' qui devrait être placé dans ''/usr/share/spip/'', on met les instructions de redirection et les instructions de réécriture d'URLs propres à SPIP à la fin du fichier :
 +<code apache>
 +    Redirect Permanent /services.html /-services-.html
 +    
 +    <Directory /usr/share/spip>
 +        #Extrait du .htaccess de Spip
 +        RewriteEngine On
 +        RewriteBase /
 +
 +        ###
 +        # Si le fichier ou repertoire demande existe
 +        # ignorer toutes les regles qui suivent
 +        RewriteCond %{REQUEST_FILENAME} -f
 +        RewriteRule "." - [skip=100]
 +        RewriteCond %{REQUEST_FILENAME} -d
 +        RewriteRule "." - [skip=100]
 +
 +        ###
 +        # URLs "propres", "propres2", "libres", "arbo"
 +        RewriteRule ^[^\.]+(\.html)?$ spip.php [QSA,E=url_propre:$0,L]
 +
 +        ###
 +        # Fichiers "standards" (si absents de la racine)
 +        #
 +        RewriteRule ^robots[.]txt$ spip.php?page=robots.txt [QSA,L]
 +        RewriteRule ^favicon[.]ico$ sites/chapril.exemole.fr/squelettes/css/favicon.ico
 +    </Directory>
 +</code>
 +
 +==== SPIP ====
 +
 +Le paquet Debian comprend un script pour la création du site dans la configuration propre à SPIP :
 +<code bash>
 +spip_add_site v2.chapril.org
 +</code>
 +
 +Bien noter le chemin du fichier ''/etc/spip/sites/v2.chapril.org.php''.
 +C'est le fichier qui devra être modifié le jour de la mise en production pour que SPIP sache traiter l'adresse ''www.chapril.org'' en plus de ''v2.chapril.org''.
 +
 +Activer le site sous Apache et recharger Apache :
 +<code bash>
 +a2ensite v2.chapril.org
 +systemctl reload apache2
 +</code>
 +
 +À ce stade, l'adresse https://v2.chapril.org/ est opérationnelle avec le message de SPIP :
 +> Ce site n’est pas encore configuré. Revenez plus tard...
 +
 +Normal.
 +La base n'est pas créée.
 +
 +===  Création de la base  ===
 +
 +Se connecter avec l’utilisateur ''root'' de MySQL :
 +<code bash>
 +mysql -u root -p
 +</code>
 +
 +Créer une base de données :
 +<code sql>
 +CREATE DATABASE IF NOT EXISTS v2_chapril_org_db DEFAULT CHARACTER SET utf8 ;
 +</code>
 +
 +Créer un utilisateur :
 +<code sql>
 +CREATE USER 'v2_chapril_org-dbadmin'@'localhost' IDENTIFIED BY 'motdepasse';
 +GRANT ALL PRIVILEGES ON v2_chapril_org_db.* TO 'v2_chapril_org-dbadmin'@'localhost' WITH GRANT OPTION;
 +</code>
 +
 +===  Fin de l'installation  ===
 +
 +On peut maintenant aller sur https://v2.chapril.org/ecrire pour achever le processus d'installation de SPIP.
 +À noter que le nom d'utilisateur donné n'a pas d'importance dans ce cas car il sera écrasé par notre copie de la base de données.
 +Il est cependant important de lancer ce processus pour que SPIP génère le fichier de configuration qui va bien.
 +Garder ''spip'' comme préfixe des tables.
 +
 +====== Transfert de la version de développement ======
 +
 +Copier les squelettes dans ''/var/lib/spip/sites/v2.chapril.org/squelettes''.
 +En profiter pour initialiser un dépôt Git dans ce répertoire.
 +
 +Copier le contenu de ''IMG/'' dans ''/var/lib/spip/sites/v2.chapril.org/IMG/''.
 +
 +Transférer la base((Dans un fichier ''dump.sql'' dans notre exemple.)).
 +
 +<code bash>
 +mysql -u v2_chapril_org-dbadmin --default-character-set=utf8 --password='motdepasse' v2_chapril_org_db < dump.sql
 +</code>
 +
 +====== Mise en production ======
 +
 +Pour la mise en production vers ''www.chapril.org'' :
 +    * Changer le nom du serveur dans ''/etc/apache2/sites-available/v2.chapril.org.conf'' ;
 +    * Le rajouter dans le tableau des sites dans ''/etc/spip/sites/v2.chapril.org.php'' ;
 +    * Changer le nom du site dans //Identité du site// dans l'administration de SPIP.
 +