1. Introduction : pourquoi ne pas lire cet article
1.1 Si vous installez un site tout neuf avec la version 1.9 de SPIP
alors le répertoire dans lequel vous avez installé SPIP ressemble à la Figure 1 ci dessous :
Figure 1. Contenu du répertoire racine de SPIP 1.9, circa 21/03/2006
CACHE/ ecrire/ IMG/ formulaires/ oo/ dist/
COPYING.txt UPGRADE.txt INSTALL.txt spip.php index.php htaccess.txt inc-public.php3
Vous avez de la chance, c’est propre, net et clairement documenté ici. Cet article ne vous concerne pas. Félicitations, et au revoir.
1.2 Si vous faites une mise à jour simplement en installant la 1.9 par dessus une 1.8 existante
Le répertoire racine de l’installation de SPIP 1.8.3 ressemble à la Figure 2 ci dessous :
Figure 2. Contenu du répertoire racine de SPIP 1.8.3
agenda.php3 formulaires/ inc-compilo.php3 oo/ spip_background.php3
article.php3 forum.php3 inc-criteres.php3 page.php3 spip_barre.js
auteur.php3 htaccess.txt inc-html-squel.php3 plan.php3 spip_cache.php3
backend-breves.php3 ical.php3 inc-messforum.php3 puce.gif spip_cal.php3
backend.php3 IMG/ inc-public-global.php3 puce_rtl.gif spip_cookie.php3
breve.php3 inc-admin.php3 inc-public.php3 recherche.php3 spip_image.php3
CACHE/ inc-balises.php3 inc-stats.php3 resume.php3 spip_inscription.php3
COPYING.txt inc-boucles.php3 inc-urls-html.php3 rien.gif* spip_login.php3
dist/ inc-cache.php3 inc-urls-propres2.php3 rubrique.php3 spip_pass.php3
distrib.php3 inc-calcul-outils.php3 inc-urls-propres.php3 site.php3 spip_redirect.php3
ecrire/ inc-calcul.php3 inc-urls-standard.php3 sommaire.php3 spip_rss.php
extract_doc.php inc-chercher-squelette.php3 index.php sommaire_texte.php3 spip_style.css
extract_pdf.php inc-compilo-api.php3 index.php3 spip_acces_doc.php3 spip_test_dirs.php3
extract_rtf.php inc-compilo-index.php3 mot.php3 spip_admin.css win_png.htc*
La procédure de mise à jour normale est d’installer la 1.9 par dessus la 1.8 en préservant tous ces fichiers et en en ajoutant d’autres.
C’est pas propre et net, mais ça devrait toujours marcher. Du moins jusqu’à la prochaine version.
Revenez donc d’ici quelque temps, lorsque vous aurez entre 1 heure et une bonne soirée à consacrer à maintenir votre site en pleine forme.
1.3 Si vous avez gardé les squelettes de votre site dans le répertoire d’installation de SPIP
c’est à dire que vous n’utilisez pas le dossier /squelettes/.
Désolé, mais vous avez loupé l’épisode précédent. Les explications de cette page restent valables, mais vous risquez d’avoir plus de mal à suivre que le petit copain au premier rang qui a tout bien rangé ses affaires. On suggère d’appliquer d’abord les méthodes décrites dans cette note. Dans l’article, en ce qui concerne « page.php » qui est obsolète en 1.9, lire à la place « spip.php ».
2. Motivations : pourquoi lire cet article
Vous êtes encore là ? C’est sympa, merci de votre attention. Vous pouvez lancer la copie de sauvegarde du répertoire d’installation de SPIP, le temps de lire la suite...
Comme précisé dans le fichier UPGRADE.txt
, la version 1.9 présente plusieurs changements techniques importants :
- On se débarasse enfin des extensions de fichier « .php3 » qui tachent. Voilà quelques années que tout le monde (y compris SPIP) utilise la version 4 ou 5 de PHP. On gardait cette scorie par souci de rétrocompatibilité, mais il est temps de l’éliminer. Dixit les developpeurs : Si cette version de transition (1.9) est encore compatible avec « .php3 », la prochaine (2.0) ne le sera pas.
- On simplifie le nom les pages (schémas d’URL en technolangue). Maintenant c’est spip.php
qui centralise tous les hits. En clair, une page nommée www.monsite.org/article.php3?id_article=12
devient www.monsite.org/spip.php?article=12
. C’est déjà mieux, vous ne trouvez pas ? Et comme implicitement le serveur web utilise la page index.php
qui elle-même appelle spip.php
, le nom de la page est encore plus mieux : www.monsite.org/?article=12
.
- On réorganise les fichiers, comme on le voit en comparant les Figures 1 et 2.
Ces changements réduisent la complexité du répertoire d’installation et permettent d’améliorer la sécurité. Ils permettent d’installer des fonds de page personalisés plus facilement. Toutefois ces améliorations ont un coût :
Si vous recopiez un /squelette/ conçu pour la 1.8 dans une installation 1.9 toute neuve,
toutes les références en .php3 ne marchent plus. Les liens entrants et les liens internes dans le site sont cassés.
3. Au travail
3.1 Préserver les anciennes URL
Si votre hébergeur l’autorise, utilisez le fichier htaccess.txt
, en le recopiant à la racine du site sous le nom .htaccess
.
Ce fichier dira alors au serveur Web que les hits sur une adresse du type article.php3?id_article=1
doivent être traités par spip.php
; il gère, de plus, les URLs « propres ».
Sinon, vous n’avez pas le choix, il faut garder les fichiers du type article.php3
à la racine.
3.2 Renommer et déplacer mes_options.php3
et mes_fonctions.php3
à expliquer.
3.3 Renommer et déplacer les fichiers de langue
à expliquer.
3.4 Les squelettes
Suite à l’élimination des fichiers article.php3
, il convient de spécifier l’âge maximum des pages dans le cache. La ligne de code précisant $delai=3600;
qui était dans article.php3
devient une ligne #CACHE{3600}
dans le squelette article.html
.
Traiter les #INCLURE
Mais comment faire pour les inclure ??? Merci de me notifier une réponse sur farouba@hotmail.com
Changer les URLs en « .php3 » codées en dur dans les squelettes, par exemple plan.php3
devient spip.php?page=plan
ou même ?page=plan
puisque index.php appel spip.php ! On peut aussi utiliser #URL_PAGE{plan}
pour faire plus propre.
4. Et enfin
Maintenant, vous pouvez supprimer articles.php3
et compagnie.
TODO : écrire un script pour tout vérifier.