J'ai pour cela bricolé un préprocesseur qui génere le source du CGI (langage au choix) à partir de page html contenant du code inséré dans des tags <% %>.
J'attends vos commentaires et vos suggestions.
Aller plus loin
- General Server Pages (19 clics)
- Présentation GSP (28 clics)
# Voui
Posté par Jar Jar Binks (site web personnel) . Évalué à 1.
J'en profite pour poser une petite question qui pourra paraître con mais je n'y connais pas grand chose en production web : imaginons que j'aie un programme C (par exemple) tournant en permanence qui fais des trucs intéressants par ailleurs, et que je veuille qu'il serve ses données sur le web sous forme de HTML. La production de HTML en soi ne pose pas de gros problèmes, mais c'est la diffusion qui en est :
- je ne peux pas faire de CGI, car le CGI est exécuté à chaque fois ;
- le PHP et assimilés, ça m'impose de réécrire le programme ;
- j'avais pensé directement servir les pages, mais ça pose problème si je veux inclure des images dedans.
Quelqu'un aurait-il une idée sur la façon de faire ça (avec gsp ou autre chose) ?
[^] # Re: Voui
Posté par Anonyme . Évalué à 0.
[^] # Re: Voui
Posté par Anonyme . Évalué à 0.
Comme solution, je te propose FastCGI (c'est vieux mais ca permet de ne pas être pénalisé par une nouvelle exécution à chaque requête).
Sinon, je ne vois pas où est le problème des images quand tu dis que tu "pense à servir directement les pages". D'ailleurs qu'entends tu par servir directement les pages ? Ecrire les documents Web périodiquement sous forme de fichier statique et que le serveur web les mette à disposition comme des ressources statiques ? Je pense que cela pourrait être une solution également.
Autre chose, tu peux aussi utiliser les Servlets ou les JSPs (enfin une technologie basée sur la plateforme J2EE) et utiliser JNI (Java Native Interface) pour faire appel à ton code écrit en C.
En bref, il y a beaucoup de solutions possibles pour un problème général. Le mieux serait que tu précises plus ta situation. Je pense aussi que si tu veux servir des ressources sur le web, tu seras peut-être amené à étendre cette application, et à re-chercher une "bidouille" pour améliorer ton programme écrit en code natif. Dans ce cas là peut-être faudrait-il prendre le temps de tout recoder en utilisant une technologie appropriée (qui dépend encore une fois de ce que tu veux faire).
A bientôt.
[^] # Re: Voui
Posté par Jar Jar Binks (site web personnel) . Évalué à 1.
J'ai écrit un client pour un protocole un peu particulier qu'on utilise dans mon école (vous inquiétez pas, tout ça est GPL et sera bientôt sur freshmeat), qui marche un peu comme les news mais de façon centralisée et plus "instantanée".
Pour des raisons bassement techniques indépendantes du code, le serveur ne peut pas servir de pages web, mais j'aimerais quand même réaliser une passerelle. Pour cela, je peux récupérer le code de mon client, qui contient un cache bien pratique et des fonctions simplifiées, il n'y aurait plus (principalement) qu'à générer du HTML au lieu d'afficher à l'écran. Zou, j'économise plein de boulot.
Je voudrais donc que ce programme tourne en permanence mais qu'il puisse diffuser des choses de façon dynamique (la génération de pages statiques me paraît complètement irréaliste). Et avant de commencer tout ça, j'aimerais savoir ce qui serait réaliste sur la façon de le faire.
[^] # Re: Voui
Posté par lorill (site web personnel) . Évalué à 1.
Et pourquoi pas ? Quand tu recuperes des news tu regeneres la page et puis voila, non ?
[^] # Re: Voui
Posté par Jar Jar Binks (site web personnel) . Évalué à 1.
[^] # Re: Voui
Posté par Anonyme . Évalué à 0.
php ou autre le parse.
le HTML est mis a jour uniquement lors des requetes.
non? j'ai rien compris?
flemme de m'authentifier
[^] # Re: Voui
Posté par Anonyme . Évalué à 0.
Dommage, j'voulais t'envoyer un mail pour savoir de quel daemon tu parlais ?
ca m'interesse au plus haut point
[^] # Re: Voui
Posté par Anonyme . Évalué à 0.
après c'est a toi de voir si le nombre de lectures du fichier html est suffisament important
pour generer a la volée le fichier html ou pas.
mailto:lefg@wanadoo.fr
[^] # Re: Voui
Posté par Anonyme . Évalué à 0.
[^] # Re: Voui
Posté par Anonyme . Évalué à 0.
Voila, ce n'est qu'une idee.
[^] # Re: Voui
Posté par Jar Jar Binks (site web personnel) . Évalué à 1.
Pour faire ce genre de choses je pensais plutôt utiliser du templating, on peut avec le même code fabriquer n'importe quel format de fichier (c'est la vision de DaCode avec ses thèmes).
Le problème avec ta solution c'est que si quelqu'un demande par web un message d'il y a 6 mois, il faut que je lui donne, et je ne vais pas stocker sur le disque tous les message au format XML, j'ai peur que ça prenne trop de place. C'est là que l'utilité du code de cache que j'ai en C se ferait sentir.
J'ai regardé FastCGI, ça pourrait bien être une solution au problème (même si ça a l'air un peu vieillot).
[^] # Re: Voui
Posté par Anonyme . Évalué à 0.
module Apache qui permet de faire du script C++ dans une page HTML grace a l'interpréteur C++ ROOT
http://d-000631-pp.dhcp.fnal.gov/~onuchin/Carrot/(...)
[^] # Re: Voui
Posté par Jar Jar Binks (site web personnel) . Évalué à 1.
http://www.fastcgi.com/cgi-bin/cvsweb/mod_fastcgi/docs/LICENSE.TERM(...)
En gros les versions modifiées de FastCGI ne peuvent pas servir à autre chose qu'à faire tourner des CGI.
[^] # Re: Voui
Posté par pasBill pasGates . Évalué à 1.
Tu archives tous les messages datant de plus de xxx jours en les compressant(si ton format c'est 1 message=1 fichier alors il faut penser a regrouper tous les fichiers dans 1 seul aussi, genre tar).
Ensuite ton cgi ira chercher le message dans l'archive quand c'est demande, ce sera plus lent que pour les autres messages, mais vu que les vieux messages sont beaucoup moins accedes que les recents, tu ne perds rien et tu gagnes en place disque, d'autre part tu peux imaginer un systeme de cache: quand tu decompresse une archive pour extraire un message, tu peux mettre dans un repertoire temporaire d'autres messages que tu auras decompresse en meme temps, ce qui evite d'avoir a decompresser l'archive une 2eme fois.
[^] # Re: Voui
Posté par Anonyme . Évalué à 0.
Elle se charge sur le client et elle vat
chercher les données à afficher sur le serveur.
[^] # Re: Voui
Posté par Sebastien Devaux . Évalué à 1.
L'autre solution serait de perfectionner ton programme pour le rendre "interrogeable" par un autre (en bref ecrire un serveur dont le CGI généré par GSP serait un client).
[^] # Re: Voui
Posté par Jar Jar Binks (site web personnel) . Évalué à 1.
# Accès aux bases de données ?
Posté par Anonyme . Évalué à 0.
[^] # Re: Accès aux bases de données ?
Posté par Sebastien Devaux . Évalué à 1.
# Desole mais ... ca sert a quoi ???
Posté par Anonyme . Évalué à 0.
Pourquoi pas essayer de construire un chariot ;)
Je m'explique ... pourquoi ne pas utiliser les architectures de pages dynamiques pour faire fonctionner ta technologie ... le principe serait de beneficier par exemple :
de la performance de PHP,
de la monté en charge et de l'ergonomie de JSP,
A reflechir ...
Sinon, brut de decoffrage : t'as rien d'autre à faire qu'a reconsturire la roue ... si tu t'ennuie je peux te trouver des idées de trucs novateurs ;)
La maladie de l'opensource : le YetAnotherSameToolThatWantsToSaveTheWorldButWillFail !! :o)
Eureusement qu'il y a tux ... et duke :)
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Anonyme . Évalué à 0.
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Anonyme . Évalué à 0.
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Anonyme . Évalué à 0.
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Anonyme . Évalué à 0.
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Wawet76 . Évalué à 1.
Je suis d'accord que Photoshop reste au dessus en terme de fonctionnalités. Tu aurais pu trouver autre chose qu'une critique sur l'interface... (perso, je préfère la façon du GIMP)
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Philippe Roy . Évalué à 1.
Il faut savoir ranger son bureau, s'approprier de l'outil. Ce sur que cette approche n'a pas été transmis par les softs proprio (qui eux aiment fonctionnement standard, recette simplificatrice, m^eme au prix d'usine à gaz) et que c'est un point d'excellence des logiciels libres.
philou
ps: L'experience n'est pas un argument en soi, mais un capital pouvant nous donner idées et exemples.
[^] # pffff...
Posté par gwenn cumunel (site web personnel) . Évalué à 1.
Critique souvent entendue (que ce soit sur gimp ou sur linux en général) :
"j'ai pas envie de perdre du temps à tout réapprendre..."
Cela t'énerve ? bah temp pis, c'est comme ça !
l'utilisateur de base, il n'aime pas être surpris.
J'ai installé gimp sur le poste d'un collègue qui bosse sur Photoshop, Illustrator et XPress (oui, oui, sous windows :().
première réaction : "c'est quoi cette interface de naze ?"
deuxième réaction (au bout de 2 ou 3 jours) : "ça a l'air correct, mais l'interface est chiante, je retourne à toshop".
bienvenue dans la vie réelle... (pour ma part j'utilise gimp :) (mal, mais je l'utilise :))
Pour l'utilisateur lamba, le logiciel libre c'est un abominable fouilli avec des logiciels qui sont pas foutu d'avoir un standard dans l'interface.
Pour nous, c'est un magnifique "super-marché" où on peut choisir le logiciel qui nous plaît.
Camarade, choisis ton camp !
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Anonyme . Évalué à 0.
bein utilise un window manager tel que ION,
et tes fenetres ne pourront plus se ballader ...
na.
*ion* arachaize grave.
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Anonyme . Évalué à -1.
http://www.gimp.org/~tml/gimp/win32/(...)
...la phrase suivante:
"[...]But it is not a Photoshop killer (for real Photoshop users, that is), Photoshop has lots of features that the GIMP lacks."
Même si j'aime beaucoup The GIMP, il est clair qu'il n'arrive pas encore à la cheville de Photoshop. Ca viendra, mais pour le moment, Photoshop reste, AMHA, le meilleur soft de cette catégorie.
--
NOTE: Clarifions tout de suite la situation. CE POST N'EST PAS UN TROLL
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Anonyme . Évalué à 0.
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Sebastien Devaux . Évalué à 1.
GSP permet de dermarrer d'une page html existante (la plus belle faite par le graphiste) et vous donne le choix du langage de programmation (et ainsi pouvoir réutiliser plus facilement ses bibliothèques perso).
J'ai peut être réinventé la roue, mais à mon goût : je n'ai rien trouvé d'analogue (il est vrai que je n'ai pas cherché longtemps).
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par ufoot (site web personnel) . Évalué à 1.
Effectivement, on rencontre souvent des situations ou "il y a bien des outils qui permettent de le faire mais pas exactement comme je veux".
Et c'est là que les logiciels libres sont intéressants. Il y a des dizaines et des dizaines de window managers, pourtant de nouveaux projets naissent régulièrement. C'est très bien.
Bien sûr, ce n'est pas la meilleure démarche à adopter si le but est de "faire la nique au logiciel propriétaire". Mais ce n'est pas forcément le but.
Moi j'aime bien l'idée du générateur de CGI, c'est peut-être déjà fait, mais d'une autre manière. Développer des choses analogues mais de manière différente c'est la meilleure méthode pour qu'à terme tout le monde dispose du logiciel qui lui convient le mieux.
Si tout le monde suivait l'optique "je fais pas parce que c'est déjà fait", alors Larry Wall aurait continué à utiliser sed et awk, et Guido Van Rossum en serait resté à tcl...
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Anonyme . Évalué à 1.
http://xml.apache.org/cocoon/xsp.html(...)
[^] # Re: Desole mais ... ca sert a quoi ???
Posté par Anonyme . Évalué à 0.
eh ben vas-y te prive pas, livre nous toutes tes idées géniales et novatrices
# Très intéressé
Posté par Anonyme . Évalué à 0.
Eh bien je dois avouer qu'aucune solution ne me parait vraiment bonne, pour des raisons de syntaxe, de difficulté de mise en oeuvre, ou encore de "portabilité" dans un autre language.
C'est en cela que GSP m'intéresse beaucoup. Je télécharge le source de la version 0.0.3 et je vois si je peux aider :-)
Merci de m'avoir fait découvrir ce projet.
--
bmc qui a la flemme de choper son mot de passe
# Bonne initiative mais ca existe déja.
Posté par Anonyme . Évalué à 0.
ELle est très bien ton initiative mais il y a déja des outils qui permettre de faire cela !
Fais une recherche avec 'template' sur cpan.org et il y a pls librairies qui permettent de gérer des template de page HTML.
Pourquoi réinventer la roue ?
Nicolas
[^] # Re: Bonne initiative mais ca existe déja.
Posté par Sebastien Devaux . Évalué à 1.
# Séparer encore plus le code
Posté par Anonyme . Évalué à 0.
- On peut retoucher au code HTML alors que l'application tourne,
- On peut travailler sur le programme sans connaitre l'HTML, et travailler sur l'HTML sans connaitre le programme.
Un exemple d'une telle librairie est "Templates Parser", un composant Ada, disponible sur la page:
http://perso.wanadoo.fr/pascal.obry/(...)
Section Ada, contributions ...
Ou directement:
http://perso.wanadoo.fr/pascal.obry/contrib.html(...)
# mirror
Posté par Anonyme . Évalué à 0.
j'ai fait un p'tit mirroir des 2 archives que j'ai trouvé :
http://ker.blablanux.org/gsp-linux-src-0.03.tar.jsp(...)
http://ker.blablanux.org/gsp-linux-src-0.03.tar.gz(...)
vala, vala :)
[^] # Re: mirror
Posté par Anonyme . Évalué à 0.
# mmhhh
Posté par Anonyme . Évalué à 0.
d'apres la tête du code généré ...
des tableaux en dur, des strcmp, des strcpy partout sur ces mêmes tableaux ...
c'est pour faire de l'admin à distance ? :)
enfin c'est vrai que l'idee est intéressante
[^] # Re: mmhhh
Posté par Anonyme . Évalué à 0.
heu ... j'ai pas compris. Explication ?
[^] # Re: mmhhh
Posté par Wawet76 . Évalué à 1.
--
[^] # GSP et sécurité
Posté par Foxy (site web personnel) . Évalué à 1.
Si GSP est un générateur de CGI avec "trous de sécurité distants", va y avoir de la gueulante dans l'air ;-)
Alors commence (je parle pour l'auteur...) par remplacer les "strcpy", "strcmp"... par des "strncpy" et "strncmp"... et cours relire la série d'articles de Linux-Mag consacrée aux buffers overflows.
[^] # Re: GSP et sécurité
Posté par Sebastien Devaux . Évalué à 1.
J'ai la serie d'article que tu évoque sous le coude, mais je n'ai pas encore eu le temps d'appliquer ces recommendations.
Enfin, s'il y a de bonnes volontés pour m'aider à améliorer la qualité du code...
[^] # Re: GSP et sécurité
Posté par Anonyme . Évalué à 0.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.