IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Web et CGI en version 3.9.1


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Février 2010
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 277
    Par défaut Web et CGI en version 3.9.1
    Bonjour,

    Ce message fait suite a celui-là :

    https://www.developpez.net/forums/d2.../#post11684767

    Je demandais, notamment, pourquoi la commande python -V ne fonctionnait pas. J'ai réussit a le faire fonctionner, sans trop savoir quel était le problème, et la version est 3.9.1.

    J'ai essayé d'utilsié python en mode web avec les cgi notament. J'ai essayé le truc le plus minimaliste mais cela ne fonctionne pas en mode web.

    J'ai essayé ceci:

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
     
    #!/usr/bin/python
     
    import cgi
     
    print 'Content-type: text/html'
    print
    formulaire = cgi.FieldStorage()
    if formulaire.getvalue('nom') == None:
        print '''
    Veuillez remplir le formulaire : 
    <form action="formulaire.py" method="post">
    <input type="text" name="nom" />
    <input type="submit"></form>
        '''
    else:
        print 'Ainsi, vous vous appelez',cgi.escape(formulaire.getvalue('nom')),' ?' # N'oubliez pas de sécuriser le code !

    Cela ne fonctionne pas. Le problème est que le code .py n'est pas interprété mais simplement rejeté sur la page web (c'est a dire que l'ont visualise le code source)ma

    J'ai aussi essayé un truc minimaliste comme print ( ' <h1> ma page </h1> ' ) mais j'ai ce code source qui s'affiche sur la page. (+ #!/usr/bin/python, en début de page)

    Une idée sur comment utiliser cgi et web en version 3.9.1 ?

    Jinx

    Note: seuls les scripts python ne fonctionnent pas. Les pages html fonctionnent très bien.

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 743
    Par défaut
    Salut,

    Citation Envoyé par Jolt0x Voir le message
    Une idée sur comment utiliser cgi et web en version 3.9.1 ?
    Je vous ai déjà dit que c'est une vieille techno. en court d'abandon depuis une quinzaine d'année.
    Pas grand monde s'y intéresse encore car depuis.... on y préfère d'autres technos comme WSGI de frameworks comme flask, django and C°.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre éclairé
    Inscrit en
    Février 2010
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 277
    Par défaut
    Quoi ? autrement dit on ne peut pas faire de page web en python (python et cgi python) ? Ou plus exactement que si on veut faire du web il faut utiliser un framework comme WCGI ?

    Avant d'utiliser un framework ou des cgi standard (dont tu dis que c'est obsolète) j'utilise la commande simple: print ( ' bonjour ' ). Le résultat est que le code source print (' bonjour ') n'est pas interprété par le moteur .py (python) mais est simplement affiché sur la page web. Est-ce que cela aussi est obsolète ? Est-ce que cela aussi est obsolète ?

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 743
    Par défaut
    Salut,

    Citation Envoyé par Jolt0x Voir le message
    Quoi ? autrement dit on ne peut pas faire de page web en python (python et cgi python) ? Ou plus exactement que si on veut faire du web il faut utiliser un framework comme WCGI ?
    Ce que j'essaie de vous dire, c'est que les compétences en la matière se font de plus en plus rares vu l'obsolescence de cette techno.

    Et cette rareté fait que pas grand monde ne saura vous répondre sauf à prendre le temps de réviser ce qu'il a pu apprendre et pratiquer il y a plusieurs dizaines d'années. Et comme on n'a déjà pas assez de temps pour se mettre à jour avec les nouveautés qui sortent... pas grand monde va vous aider.

    Après c'est vous qui voyez.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre éclairé
    Inscrit en
    Février 2010
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 277
    Par défaut
    Merci wiztricks, mais la question principale portait sur le print (' bonjour ') qui affiche print (' bonjour '), c'est a die le source. Comme tous mes script .py


    les WCGI, ca viendra plus tard, et de toute façon si print ne fonctionne pas, les WCGI n'on plus.

  6. #6
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Comme je l'ai dit dans un message précédent (https://www.developpez.net/forums/d2.../#post11678800), quand le serveur renvoie le code source au lieu de l'exécuter, c'est qu'il a trouvé une erreur. Et malheureusement, il ne fournit pas un message d'erreur intelligible. Il faut donc travailler avec méthode, commencer simple et ajouter les éléments nécessaires au programme petit à petit afin de trouver les morceaux défaillants. Les erreurs qui empêchent le CGI de fonctionner sont souvent subtiles. Par exemple, si on développe sous Windows pour un serveur Linux, il ne faut pas oublier de convertir le code en remplaçant les fins de ligne Windows par les fins de ligne Linux!

    Par ailleurs, j'avais donné un code qui marchait chez moi en CGI: l'as-tu essayé, et qu'est-ce que ça donne?

    Pour la version de Python: j'en suis encore à la version 3.7.8, et je vais bientôt passer à la 3.8. Je ne passe jamais vite à la dernière version, ne serait-ce que parce que les modules externes qui m’intéressent ont souvent plusieurs mois de retard.

    Quant à dire que le CGI est obsolète, je ne sais pas. Il est clair que c'est une technologie rustique qui a des défauts, mais elle rend aussi des services, et il ne me semble pas que sa disparition soit planifiée (https://fr.wikipedia.org/wiki/Common_Gateway_Interface). En tout cas, elle fonctionne encore chez mon hébergeur, et il ne m'a pas informé de sa disparition.

Discussions similaires

  1. [web] page web et cgi
    Par vince2005 dans le forum Web
    Réponses: 3
    Dernier message: 26/10/2006, 16h08
  2. Site web : Comment gérer une version Officiel et Officieuse
    Par AlphaYoDa dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 05/12/2005, 08h48
  3. [web] Erreur cgi-li ????
    Par drakan dans le forum Web
    Réponses: 20
    Dernier message: 31/05/2005, 14h06
  4. [web] Apache Cgi-Bin
    Par Tommy Jean dans le forum Web
    Réponses: 8
    Dernier message: 23/08/2004, 18h46
  5. [web] use CGI.pm
    Par martijan dans le forum Web
    Réponses: 18
    Dernier message: 09/09/2003, 14h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo