Créer une version cache html de ses pages php

Support en français pour CMS Made Simple.

Moderator: jce76350

philight

Créer une version cache html de ses pages php

Post by philight »

Bonjour,

je ne sais pas si c'est dans les cartons d'une future version, mais il serait bon de pouvoir créer une version cache en html des pages générées avec CMSMS.

L'idée serait de modifier la page seulement quand on intervient dessus et sinon livrer en html, donc plus vite, la page restée en cache.

Cela éviterait certains problèmes, chez certains hébergeurs, lors de connexions simultanées à la BDD qui peut provoquer des refus et afficher une page blanche pour les utilisateurs.

Qu'en pensez-vous?

PS : je m'apprête à lancer un site développé avec CMSMS mais j'ai de gros pb avec l'hébergeur online.net et j'essaie de trouver une solution car ils sont vraiment nuls avec PHP/MySql

Philight
Dee
Power Poster
Power Poster
Posts: 1197
Joined: Sun Mar 19, 2006 8:46 pm

Re: Créer une version cache html de ses pages php

Post by Dee »

Bonjour,
(J'espere j'ai tout compris, mon Francais n'est pas tres bon).
On peut faire un html version des pages générées avec CMSMS avec le software HTTrack.
philight

Re: Créer une version cache html de ses pages php

Post by philight »

Dee wrote: Bonjour,
(J'espere j'ai tout compris, mon Francais n'est pas tres bon).
Your french is very good!
Dee wrote: On peut faire un html version des pages générées avec CMSMS avec le software HTTrack.
Merci pour l'info je vais tester cela. (thanks, i'm gonna test that stuff).
User avatar
dam
Forum Members
Forum Members
Posts: 136
Joined: Sat Jan 14, 2006 6:07 pm

Re: Créer une version cache html de ses pages php

Post by dam »

Online.net est effectivement un hébergeur à éviter pour CMSMS (quelques fonctions désactivées, seulement 8Mo de mémoire allouée).
Attention à ne pas installer trop de modules, cela risque de bloquer à un moment.

Petit conseil : enlever tous les fichiers de langues inutilisés dans les modules.
soupaloignon
Forum Members
Forum Members
Posts: 36
Joined: Sat Dec 02, 2006 7:08 pm

Re: Créer une version cache html de ses pages php

Post by soupaloignon »

Iil existe un moyen de rapatrier un site sur son disque dur (même si celui-ci est en php).

Il faut être sous Linux.
Creer un dossier n'importe où, ouvrir une console, se positionner dans le dossier créé et entrer la commande suivante :
wget -r -l5 -k -E www.le-site.com

-r : récursif sur le site
-l5 : cinq niveaux de récursion au maximum (par exemple, mais cela peut être plus)
-k : convertir les destinations des liens pour une lecture locale
-E : convertir les types de fichier au format HTML (pour éviter que la lecture de sites en PHP ne pose un problème en lecture sous Firefox).

C'est peut être un peu à coté de ta question, mais il y a quand même un rapport. Cela pourra sans doute servir à quelqu'un.

Tres pratique en tout cas lorsque l'on veut montrer un site offline, sans s'embarrasser d'un xampp ou easyphp, dans lequel il faudra dumper la base de données.

Cordialement
philight

Re: Créer une version cache html de ses pages php

Post by philight »

dam wrote: Online.net est effectivement un hébergeur à éviter pour CMSMS (quelques fonctions désactivées, seulement 8Mo de mémoire allouée).
C'est clair, mais c'est imposé par le client... A moins que je fasse pression pour changer d'hébergeur mais comme c'est un package genre nom de domaine + presta web, j'ai peur que Online traine des pieds pour transférer le nom de domaine...
dam wrote: Attention à ne pas installer trop de modules, cela risque de bloquer à un moment.
Petit conseil : enlever tous les fichiers de langues inutilisés dans les modules.
Je n'en ai pas beaucoup en + du bundle de départ : form builder, feedbackform et newsletter made simple. Je vais suivre le conseil poru virer les fichiers de langues inutilisés, merci.
soupaloignon wrote: Iil existe un moyen de rapatrier un site sur son disque dur (même si celui-ci est en php).
...
C'est peut être un peu à coté de ta question, mais il y a quand même un rapport. Cela pourra sans doute servir à quelqu'un.
Tres pratique en tout cas lorsque l'on veut montrer un site offline, sans s'embarrasser d'un xampp ou easyphp, dans lequel il faudra dumper la base de données.
C'est vrai que ça peut être pratique, mais dans mon cas il faudrait que tout changement effectué sur CMSMS soit reproduit automatiquement sur la copie des pages en html...

Je me sens vraiment bridé par cet hébergeur d'opérette...

Phililight
mahjong

Re: Créer une version cache html de ses pages php

Post by mahjong »

il serait bon de pouvoir créer une version cache en html des pages générées avec CMSMS.
Oui, en effet. Nous sommes très nombreux à en faire la demande, d'autant que cette fonctionnalité est normalement proposée avec tout CMS digne de ce nom. Hélas, l'équipe restreinte de développement, qui s'est heurtée initialement à quelques difficultés de mise en oeuvre, a tout bonnement abandonné. Maintenant, elle élude les demandes d'amélioration en suggérant de prendre plutôt un instantané HTML du site avec des outils du type wget ou HTTrak. Or, avec ces méthodes alternatives, aucun script PHP n'est copié. Elles sont suffisantes pour faire une présentation statique sur CD, mais, totalement inadéquates autrement. Elles interdisent l'exécution de code en direct, par conséquent, la moindre interaction adaptée aux requêtes de visiteurs. C'est très regrettable.
Last edited by mahjong on Tue Dec 12, 2006 2:05 am, edited 1 time in total.
philight

Re: Créer une version cache html de ses pages php

Post by philight »

mahjong wrote: C'est très regrettable.
Je suis bien d'accord, surtout que pour le reste CMSMS est vraiment très agréable à manier, les utisateurs/clients ne sont pas face à un outil rebuttant. C'est vraiment dommage d'autant plus que c'est faisable et implémenté sur d'autres CMS, comme vous le dites...
Pierre M.

Re: Créer une version cache html de ses pages php

Post by Pierre M. »

D'après les récentes discussions des devs autour de la v1.1, le moteur de gabarits utilisé par CMSms (Smarty) semble avoir été modifié et/ou court-circuité dans le code, ce qui rendrait très problématique, voire impossible, l'utilisation de son cache statique.

Mais tout espoir n'est pas perdu : quelqu'un a suggéré de brancher curl ou un truc du genre en fin de chaine pour obtenir un contenu html statique (Cf mon fil in English là-dessus).

PM
mahjong

Re: Créer une version cache html de ses pages php

Post by mahjong »

le moteur de gabarits utilisé par CMSms (Smarty) semble avoir été modifié et/ou court-circuité dans le code, ce qui rendrait très problématique, voire impossible, l'utilisation de son cache statique
Ça n'a aucune importance, sauf que je n'arrive pas à le faire comprendre aux développeurs. Mon anglais n'est pas assez bon.

Nous n'avons nullement besoin de Smarty. Il faut simplement arrêter de penser que le produit fini, à la sortie de CMSMS, est obligatoirement du code HTML. En fait, le seul critère est qu'il s'agit de texte. CMSMS assemble, à l'aide de patron Smarty, du contenu texte puisé dans une banque de données. Cela peut très bien être des fichiers HTML avec quelques éléments PHP non digéré. Pour cela, il faut seulement un mécanisme équivalent à la balise {literal}, pour le code devant être exécuté seulement à la sortie de la cache, et une interface publique rudimentaire.

Architecture actuelle:

Code: Select all

db (HTML + PHP) -> CMSMS -> HTML envoyé directement aux visiteurs
Architecture souhaitable:

1re couche, quasi identique à celle utilisée maintenant sauf que le résultat est mis en réserve sur disque dur

Code: Select all

 db (HTML +PHP1 + PHP2) -> CMSMS -> HTML +PHP2 sauvegardé dans un répertoire privé 
2e couche, un gestionnaire de cache

Code: Select all

 HTML + PHP2 -> Interface publique -> HTML 
Les visiteurs n'interagissent plus directement avec CMSMS, mais plutôt avec la 2e couche, un gestionnaire de cache très simple qui leur sert d'intermédiaire.
mahjong

Re: Créer une version cache html de ses pages php

Post by mahjong »

J'ai oublié de spécifier:

PHP1 = les scripts insérés dans les templates
PHP2 = les scripts insérés dans les pages ({content})
Pierre M.

Re: Créer une version cache html de ses pages php

Post by Pierre M. »

J'aimerais déjà que pour commencer, le CMS génère des fichiers html statiques pour tout ce qui ne contient pas de "php2", soient mes pages les plus stables, les moins souvent modifiées :
/truc/chose1.html
/truc/chose2.html
tout en laissant pour le moment :
/bidule/machinA.php
/bidule/machinB.php
Les choses seraient les pages de contenu, les machins seraient les pages "agitées" : news, calendrier, recherche...

Si on avait au moins cela, on gagnerait déjà beaucoup (ni db, ni même php, pour les contenus assez stables). Et je pense que c'est plus facile à "vendre" aux devs que vos "deux couches", non ?
(d'où ma suggestion du flag "cachable à donf" dans le fil in English)

PM
Jessica

Re: Créer une version cache html de ses pages php

Post by Jessica »

Nous somme 2 ou 3 ami(e;-) à utiliser ce très simple CMSMS pour nos sites "perso" hébergés chez free.fr

Et donc nous serions très intéressées par un "système de cache en html" comme vous dites
vu les soucis de "performance" pour ce qui est du php et de la base de données MySQL

Mais je ne vais pas me plaindre, c'est gratuit !
par contre est-ce que depuis cet hiver et le dernier message, d'autres on des "nouvelles" ?

Merci
mahjong

Re: Créer une version cache html de ses pages php

Post by mahjong »

Vous allez être contente d'apprendre qu'une antémémoire (cache) sera incluse dans la future version 2, maintenant en préparation et prévue pour la fin de l'été.
cdrik

Re: Créer une version cache html de ses pages php

Post by cdrik »

il me semblait que smarty (le moteur de template) incluait un cache de base ... je vais voir pour me renseigner !
Post Reply

Return to “French - Français”