N.B. : cet outil (avec son article rappelant l’historique) a beaucoup évolué depuis les origines ; le fichier source (en version 6.x actuelle en 2024) est désormais au format compressé, et vous pouvez enregistRer certaines options de paramétrage, dans son fichier annexe spip_loader_config.php à créer spip_loader_config.php
, en particulier définir des webmestres autres que l’auteur n°1..
A recharger sur https://www.spip.net/spip-dev/INSTALL/spip_loader.php.
Installateur automatique
L’installateur automatique de SPIP [5] est une facilité supplémentaire pour la première initialisation d’un SPIP (comme pour une mise-à-jour d’ailleurs [6]...).
En effet, installer le core de SPIP (quelques milliers de fichiers à transférer par FTP depuis votre poste local vers le serveur de votre hébergeur) représente un certain temps de transfert, d’autant qu’il a déjà fallu le rapatrier depuis les serveurs d’origine https://files.spip.net/archives ;
et si le transfert se faisait directement, de serveur à serveur ?
C’est la démarche automatisée par ce simple script PHP à télécharger depuis la page SPIP de download [7] , un seul fichier à transférer par FTP dans le dossier du serveur hébergeur, qui sera la racine de votre SPIP et à "activer", c’est-à-dire demander son accès au serveur, en donnant dans votre navigateur, l’URL de ce fichier.
- spip_loader v6
- Ici vous utilisez déjà la dernière version du Chargeur de SPIP
Le script charge automatiquement tout les fichiers de SPIP, y compris lécran de sécurité, et assure aussi la création automatique des dossiers répertoires de téléchargements complémentaires :
-
./lib
-
./plugins
-
./plugins/auto
-
./squelettes/
(dans les dernières versions)
Par contre les sous-répertoires de ce dossier (indispensables pour utiliser Zcore) restent à créer par l’utilisateur....
Attention ! Vérifiez bien :
les Pre-requis Techniques en particulier la version de PHP avec openssl ; trop ancienne : le spip_loader vous répondra "Chargement impossible" !
Ah, oui ! Parce qu’il comporte un test de version PHP mini [8].
le (dé)blocage d’un parefeu !
la version de PHP sur votre hébergeur [9]
les dernières versions de spip_loader (6.x..y) à utiliser !
mais sachez que ce programme se met à jour tout seul (enfin... sur votre commande) avec la dernière version [10] ...
le choix de la branche de version maintenue SPIP 4.2 à installer (voir ci-dessous)
Le niveau de version de la branche de SPIP est 4.2.16, le ".16" signifie "release 16"(ou indice de version dans la branche), comme il y a des "2.1.x" (branche 2.1), les obsolètes "2.0.x" (branche 2.0) ou 1.9.x (branche 1.9).... et désormais les 3.1 et 3.2.x, bientôt la 3.3-dev !
Nota Bene : Il est fortement déconseillé d’utiliser spip_loader si vous n’avez plus d’accès direct aux fichiers (par ftp, ssh, ...) pour pouvoir réparer a minima en cas de problème ...
Le spip_loader est désormais distribué à l’adresse suivante https://get.spip.net/ sous forme d’un fichier au format binaire phar. Si vous avez besoin de personnaliser l’installation en définissant des constantes, il vous faut créer un fichier de configuration spip_loader_config.php (cf https://www.spip.net/fr_article5705.html).
Des erreurs ? les risques de blocage ?
Avec le temps spip_loader est devenu une machine performante, mais parfois... un peu sensible ! Quelques pistes d’expérience
version de spip_loader "antédilivienne" : toujours commencer par recharger un spip_loader récent, fonctionnalité désormais automatisée
version de branche SPIP non maintenue :
vérifier la configuration dans spip_loader_config.php
restriction d’utilisation : SL contrôle la connexion de l’administrateur webmestre avant de l’autoriser à lancer une mise à jour :
se connecter en webmestre, et si n°auteur>1 se déclarer dans spip_loader_config.php
Ecran blanc :
- mauvaise version de PHP
- trop ancienne version de spip_loader : mettre à jour par FTP
- fichier .json incorrect ou inadapté : à effacer par FTP avant de relancer
- accès distant aux serveurs SPIP impossible (hélas, cela arrive, rarement !
Bravo SPIP
Les informations ci-après sont parfois obsolètes, avec les améliorations apportées sur SL !
Vérifier la version SPIP à charger
Voyez aussi quelle version de SPIP vous souhaitez : en cette période de migration et de changements tant PHP que SPIP, on peut avoir quelques surprises...
Si vous voulez vérifier/changer, c’est pas difficile !
Ouvrez le fichier spip_list.json
dans un éditeur de texte (cf. Editeurs du WebMestre PC), et regarder la liste des versions affichées : la modification pour recharger aussi une version 3.2 n’est pas trop difficile à construire par analogie : exemple.
{"api":2,"versions":{"dev":"spip\/dev\/spip-master.zip","4.2.0":"spip\/archives\/spip-v4.2.0.zip","4.1.7":"spip\/archives\/spip-v4.1.7.zip","4.0.9":"spip\/archives\/spip-v4.0.9.zip","3.2.17":"spip\/archives\/spip-v3.2.17.zip"},"default_branch":"4.2","requirements":{"php":{"master":"7.4.0","4.2":"7.4.0","4.1":"7.4.0","4.0":"7.3.0","3.2":"5.4.0"}}}
Renvoyez par FTP votre fichier modifié, et protégez-le en écriture [11] sur votre serveur, et... gogogo !
Attention : une utilisation rapide de spip_loader après sa dernière modification en 5.3) m’a carrément planté un SPIP installé, configuré en SPIP 3.2 dans le fichier de config...
La 3.2 n’étant plus maintenue il m’a écrasé la version SPIP 3.2.16, puis commencé à modifier la BdD quand j’ai voulu travailler : la cata !!!!
Rappel des pièges possibles ?
le plus gênant : se tromper de version (voir ci-dessus !)
le plus piégeant : utiliser un PHP trop ancien (le message dit juste "Impossible...")
le plus récent (Oct.2018) : prendre un php trop récent [12]
le plus tordu : vérifier l’activation de l’extension php_openssl.dll dans php.ini [13]
le plus fréquent : encore des problèmes sur les droits /répertoires du serveur
le plus bête : omettre l’extension .php (ou modifier le nom du script [14] )
le plus oublié : avoir saturé son espace disque
le plus c...ensuré : "Ce site n’est pas encore configuré"... alors que vous voulez juste relancer spip_loader.php pour mettre une autre branche. Effacez tout avec FTP...
le plus actuel [15] : passer en PHP 5 (voir Des cas..... résolus ! PHP5, même pour spip_loader ! )
le plus normal : le rechargement fonctionne-t-il avec votre version d’IE ?
le plus improbable : s’il y avait un souci avec IPv6 ?
le plus drastique : certains hébergeurs brident tout téléchargement hors FTP,
le plus caché : parfois des soucis d’op-cache perturbent certains scripts opérant la BDD,
le plus vicieux : et si vous étiez bloqué par une ré-écriture simultanée du Zip sur le serveur d’origine... recommencez à l’URL initiale
spip_loader.php?
(sans rien derrière.) !
Par exemple, si vous avez fait une erreur de frappe dans l’appel du script spip_loader, voilà ce qu’affichera votre navigateur :
- Spip_loader.php NotFound
- L’adresse URL que vous avez indiquée ne correspond pas à un fichier chargé sur le serveur : vérifiez l’orthographe...
Encore quelques cas de blocage rencontrés
A l’occasion du passage en SPIP 4.o sur divers sites (déjà en spip-4.o-dev ou encore en spip-v3.2.11) petit florilège de soucis à contourner :
d’abord être dans une version suffisante de PHP
sinon spip_loader refusera de fonctionner
charger une version très récente du spip_loader.php
sinon vous risquez de retomber sur une page blanche incompréhensible, voire si vous avez de la chance avec un vieux php 5.6, un beau message d’erreur
effacer les divers fichiers de configuration liés à spip_loader
sinon vous risquez de partir sur la version de dev suivante (qui change la BDD)
mettre à jour un maximum de plugins aux dernières versions compatibles,
avant de tenter la montée de version de SPIP
contrôler la compatibilité totale des plugins (en installant Verifier plugins) par https://contrib.spip.net/4882
vérifier la configuration éventuelle de
spip_loader_config.php
vider le cache SPIP [16] juste avant de faire la mise-à-jour, le désactiver et recommencer : il y a parfois des relents bizarres...
après rechargement, passer sur la page de gestion des plugins et vérifier leur actualisation (surtout dans les plugins Inactifs et incompatibles, à Montrer..
recharger ceux-ci par Téléchargement d’une URL d’archive (liens sur Contrib ou Plugins)
Sécuriser les SPIP installés
Cette opération de mise-à-jour de SPIP est recommandée pour suivre les mises-à-jour de SPIP, surtout les mises-à-jour de sécurité (il actualise aussi l’écran de sécurité) ; mais cela peut être aussi générateur de problèmes, lors d’une montée importante en termes de modifications de tables, et/ou de compatibilité avec les plugins. Il est donc recommandé de d’abord valider une montée de version sur une copie du site de production, avec les mêmes contextes d’environnement PHP ; d’ailleurs le script vous propose de rester dans la même branche de SPIP, mais avec la dernière version à jour, y compris le dernier écran de sécurité, même sur une ancienne branche.
Mais il reste fortement déconseillé de laisser ce script accessible dans votre répertoire de travail : en effet, la protection décrite si dessous ne peut être garantie ; elle n’est d’ailleurs pas prise en charge par l’écran de sécurité, et les manipulations du script sont potentiellement dangereuses : effacez ce script après usage !
A ne pas oublier !
Ce script spip_loader fait beaucoup de choses, mais il vous faudra néanmoins penser à quelques opérations complémentaires à faire par FTP en même temps que vous téléchargez le script à la racine de votre site internet,par exemple créer le fichier de configuration complémentaire du Spip_loader
Il faut(x !)/fallait encore créer manuellement [17] les dossiers répertoires de personnalisation :
-
./lib
-
./plugins
-
./plugins/auto
Par contre le script n’assurre toujours pas la création directe d’un dossier de personnalisation des squelettes (non plus que SkelEditor /à vérifier ?/ :
-
./squelettes
Et ensuite, vous pourriez charger les plugins voulus... mais il est préférable de les faire charger par SVP :./ecrire/?exec=admin_plugin
, voire désormais -pour les experts- charger les modifications de SPIP avec Composer et/ou SPIP-Cli !
Quelques interdits !
Le fonctionnement de spip_loader (comme quelques autres scripts/fonctionnalités de SPIP liées à SVP, utilise des facilités parfois jugées sensibles [18] pour la sécurité de leurs clients par certains hébergeurs : ils brident alors PHP, et donc ’on sait’ que :
Infomaniak n’accepte pas spip_loader nativement, mais SPIP Arno* nous fournit la réponse :
pas de souci. Il faut aller dans l’espace de gestion de son site pour « régler les limites de PHP », et « allow_url_fopen ». Par défaut c’est bloqué, et donc ça bloque spip_loader et les mises à jour de plugins.
les pages perso de Free présentent de nombreuses limitations...
Article publié le 21 mai 2012, et actualisé en juin 2024 .
Répondre à cet article