Maison  >  Article  >  développement back-end  >  Partagez un exemple de didacticiel sur l'exécution de scripts Python à l'aide de CGI sur IIS

Partagez un exemple de didacticiel sur l'exécution de scripts Python à l'aide de CGI sur IIS

零下一度
零下一度original
2017-05-19 13:05:122698parcourir

Cet article présente principalement le tutoriel d'exécution de scripts Python en mode CGI sur le serveur IIS Bien que les performances d'IIS ne soient pas idéales... Les amis qui en ont besoin peuvent s'y référer

En raison de leur exposition à Python. développement Web, il m'est arrivé d'étudier la méthode CGI la plus simple. Il est vraiment difficile de configurer Python pour le développement Web sous Windows. Cependant, il est assez facile à configurer sous Linux. Microsoft avait un article technique "Utilisation des scripts Python". " avec IIS" présente ce contenu. Cet article présente deux méthodes. La première consiste à utiliser le moteur ASP pour exécuter des scripts Python. Bien sûr, la technologie ASP est obsolète. faites-le simplement aujourd'hui. Présentez le fonctionnement du module CGI.

Écrivez un script Python simple qui prend en charge CGI (cet article présente la version 3.2 de Python) :

print("Status: 200 OK")
print("Content-type: text/html")
print() # 打印一行空白行,用于分隔HTTP Header和正文
 
print("<h1>Hello World!</h1>")
C'est tout. Vous pouvez deviner que CGI redirige le flux de sortie standard vers le flux de sortie HTTP. est utilisé pour réaliser une page Web ou une transmission de données.

Bien sûr, cela ne peut pas être exécuté directement dans IIS. Nous devons le configurer, ouvrir l'interface du gestionnaire Internet Information Services (IIS) et sélectionner "Handler Mapping".


2015425161112268.png (373×139)

Sélectionnez "Ajouter un mappage de module" sur le côté droit de l'interface suivante.

IIS7 ajoute le mappage de modules


2015425161152223.png (572×250)

Supposons que notre Python 3.2

soit installé dans C:Python32, alors vous pouvez voir l'image ci-dessous Remplissez-le comme ceci :

2015425161216044.png (397×318)

Cliquez ensuite sur OK et sélectionnez « Oui » dans la boîte de dialogue qui apparaît ensuite.


2015425161237176.png (416×161)

D'accord, notre configuration est terminée, redémarrez IIS, puis essayez le code tout de suite. Certaines personnes peuvent se plaindre qu'il est plus difficile de déboguer les erreurs lors de l'écriture de pages Web à l'aide de CGI. Par exemple, l'erreur suivante est signalée :

Erreur HTTP 502.2 - Passerelle incorrecte

L'application CGI spécifiée. n'a pas renvoyé un ensemble complet d'en-têtes HTTP qui produisent un comportement erroné. L'en-tête réel renvoyé est "Traceback (dernier appel le plus récent) : Fichier "E:projectstest.py", ligne 3, dans 4225fa317875f3e92281a7b1a5733569 1/0 ZeropisionError: pision by zero ".

En fait, il suffit d'introduire import cgitb; cgitb.enable() au début, comme suit :

import cgitb; cgitb.enable()
print("Status: 200 OK")
print("Content-type: text/html")
print() # 打印一行空白行,用于分隔HTTP Header和正文
 
print("<h1>Hello World!</h1>")
De cette façon, si une erreur se produit, cela sera signalé de manière conviviale. Sortie de l'erreur.


2015425161301420.png (610×391)

Pour le traitement des formulaires, vous pouvez vous référer au module d'importation cgi (cgi.FieldStorage Il existe de nombreuses introductions à cet aspect sur Internet, j'ai donc gagné). Je n'entre pas dans les détails. Profitez-en !


[Recommandations associées]


1

Explication détaillée de l'écriture de données cgi dans un exemple de texte ou de base de données2 .

Qu'est-ce que CGI ? Introduction détaillée à la programmation Python CGI

3.

Utilisation du module CGI pour créer un exemple de didacticiel de page Web simple

4.

Partagez un exemple de didacticiel de. Programmation Python CGI

5.

Explication détaillée du XML et exemple de code des applications CGI modernes

6

Le processus FastCGI s'est arrêté de manière inattendue, provoquant une erreur 500<.>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn