Bonjour bonjour...
<intro>
Alors voilà je me présente, j'm'appelle Naoki et je suis webmaster d'un ch'tit site sur l'animation japonaise (kyodai.com/namida).
Certains d'entre se souviennent peut-être de moi (notamment Arno et Davduf... ;)), puisque j'ai eu le plaisir de faire partie des co-fondateurs du Mini-rézo et donc co-auteurs d'Uzine et du manifeste du web indépendant, dans ces temps préhistoriques du Net français (96-97...). Je suis parti de l'équipe parce que je n'avais pondu que deux articles, absolument sans intérêt qui plus est (enfin, si, c'est du second degré mais je suis pas un pro pour ça...), et parce que je me sentais un peu trop "à part", pas assez diversifié dans ma culture.
Bon, ça n'a pas changé, puisque je reprends du poil de la bête sur mon site et je le refais entièrement sous SPIP. Choix qui s'est opéré sur les fonctionnalités de l'outil et non le fait qu'il soit issu de ce petit univers que j'aimais tant
Comme quoi, le hasard fait bien les choses.
Après environ 1 mois et demi de boulot, basé sur SPIP 1.6 R1 et les squelettes Eva, j'ai construit mes propres squelettes, et je suis plutôt content du résultat, sur un plan graphique. Ca ne révolutionne rien du tout, mais ça correspond assez à ce que je voulais faire pour mon site.
</intro>
Voici le site beta (auquel il manque encore au moins 500 pages, mais je peux pas tout faire à la fois) :
Seulement voilà, il y a quelques problèmes. J'en ai eu pas mal (débutant PHP et MySQL oblige) depuis le départ, mais ceux-là sont persistants...
- J'utilise les htaccess pour refaire mes URL sous la forme http://cyna.net/art/50 au lieu de http://cyna.net/article.php3?id_article=50 et je me retrouve avec plein de problèmes... Par exemple le fait de définir des faux répertoires oblige à mettre un <base href> dans les headers, et occasionne des erreurs 404 dans beaucoup d'endroits du code (notamment les formulaires, les forums, etc). J'ai été obligé de modifier à la main le code pour ça. Je crois que le coupable est une fonction qui recrée l'URL actuelle, mais sans utiliser le système des inc-urls.php3, et ça merdouille. Je comprends pas, parce que par exemple dans Le Monde Diplomatique, il n'y a aucun problème d'URL. Mon fichier d'URLs est basé sur ce type de fonction :
function generer_url_article($id_article) {
$url = "/art/$id_article";
if ($GLOBALS['recherche']) $url .= "?var_recherche=".urlencode($GLOBALS['recherche']);
return $url;
}
Ben ça marche pas toujours.
- Le moteur de recherche n'est pas terrible (excusez la critique, mais ça m'embête autant que vous). Primo, il ne fait pas les recherches dans les titres d'article (c'est dommage). Secundo, il est incompatible (encore ?!) avec le système d'URL que j'emploie : essayez par exemple
http://cyna.net/art/1?var_recherche=seiya
http://cyna.net/article.php3?id_article=1?var_recherche=seiya
Le premier ne marche pas, le second oui. En enlevant le "?" et ce qui suit, on a pourtant les mêmes pages... De plus, le mot en surbrillance ne fonctionne pas sur cet article. Je soupçonne qu'il s'agit de l'utilisation du script découpant les parties de l'article en plusieurs pages.
- Il y une certaine lenteur par moments. Par exemple ici :
http://cyna.net/ds/2
Si vous cliquez à gauche sur un des thèmes (mots-clé), la liste apparaît sans problème. Par contre si vous cliquez sur une date, il y a 80% de chances que la page tombe sur un time-out (surtout sous IE). Pourtant le code des archives n'est pas compliqué, il est dispo ici : http://cyna.net/archive.html (je précise que toutes les pages SPIP ont leur squelette dispo de cette manière, avec comme exceptions l'index qui est sommaire.html bien sûr, et les articles qui sont sur article-normal.html, héritage des squelettes Eva).
- Enfin, toujours en matière de lenteur, mais là c'est beaucoup plus étrange : j'ai du mal à comprendre pourquoi je mets entre 1 et 2 secondes pour passer d'un article à un autre. Voilà le code source d'article.php3 :
<?php
$fond = "article-normal";
$delais = 24 * 3600;
if (!defined("_INC_PUBLIC")) {
define("_INC_PUBLIC", "1");
include("inc-public-global.php3");
} else {
include(inclure_fichier($fond, $delais, $contexte_inclus));
}
?>
Que le fichier soit en cache ou pas, j'ai toujours, entre le moment où je clique, et le moment où la page actuelle disparaît pour laisser apparaître la suivante, un délai d'une à deux secondes. Vous allez me dire, "c'est la faute au serveur !", oui, mais bon, j'ai plein d'autres sites en beta (ou terminés) à ces URLs :
http://namida.cyna.net/animes_episodes_2.html (site beta complémentaire, utilise un code PHP spécifique, aucun cache, plein d'accès MySQL, et pourtant c'est très véloce)
http://hades.cyna.net - mon blog (qui disparaîtra à terme au profit du site beta), avec dans les 350-400 articles, c'est bien lourd et pourtant, malgré l'absence de cache, dès que je clique, la page actuelle s'en va pour laisser place à une page blanche qui va se remplir progressivement devant nos yeux... Le temps de chargement de la page n'est pas toujours super-rapide, mais ce qui m'intéresse ici, vous l'aurez compris, c'est le délai entre le clic et la disparition de la page qui m'intéresse, vous savez, ce délai durant lequel on se demande si le browser a bien pris en compte notre clic ou si on a encore cliqué de travers...
http://cyna.net/art/ - un site de test, qui utilise le très sympa ArtiPHP, toujours pas de cache ou quoi que ce soit, j'ai tenté de mettre 1800 articles (identiques) dans la base des news, et ça marche sans difficulté, avec un ralentissement quasi-imperceptible par rapport à la version "vierge".
Quand je vois tout ça, je me dis "Naoki, réécris Nucleus ou ArtiPHP pour y intégrer les fonctionnalités que t'aimes bien de SPIP, comme ça t'auras la vélocité de ces CMS et la richesse et la puissance de SPIP...", mais bon, je n'en ai ni le courage, ni l'envie réelle, étant donné que sans ces problèmes, SPIP me paraît l'outil idéal pour le webmaster en herbe, et je me dis que cet e-mail provoquera peut-être (pourquoi pas ?) quelques réactions dans la communauté SPIP, et permettra de prouver qu'il y a effectivement des problèmes à corriger, ou alors que je suis vraiment brutalement mauvais en matière de PHP et qu'une erreur de configuration de SPIP aura fait du mal au temps de latence 
Je ne sais pas... C'est pour ça que je vous demande 
Ah oui, j'oubliais de préciser : j'ai tenté avec un squelette "vierge", et c'est toujours lent à la détente chez moi (un peu moins quand même !). Idem avec une installation de SPIP 1.4 (au moins j'aurai tenté le coup). Je serais vraiment tenté de croire qu'il y a un problème d'étranglement dans le code, mais certains sites comme Le monde diplo étant très véloces, je reste sans voix devant ce problème qui me gêne terriblement depuis une semaine (maintenant que le site est en phase de finalisation technique).
Je suis à votre disposition pour envoyer le code source de SPIP modifié par mes soins (correction des bugs pour les URLs simplifiées, etc).
Merci d'avance à ceux qui auront lu ce long mail que j'aurais dû écrire depuis longtemps
(Timidité, etc)
--
Rene-Gilles Deberdt
kyodai.com & cyna.net