2011-09-17 7 views
-1

J'ai trouvé un script Python pour ma tâche, mais je ne sais pas comment je peux exécuter ce script sur le serveur avec le paramètre (sur ma machine locale je le fais avec la ligne de commande). Si ce script est par l'adresse www.aaa.com/abc.py, alors comment puis-je l'exécuter avec des paramètres par navigateur ou autre?Exécution du script Python

+0

Quel serveur Web est en cours d'exécution sur le serveur? –

Répondre

2

Vous devez exécuter le script Python à partir d'un script CGI.

D'abord, créer un script CGI, abc.sh comme ceci:

#!/bin/sh 
echo "HTTP 200 OK" 
echo "Content-type: text/plain" 
echo "" 
./abc.py 2>&1 

Assurez-vous de chmod +x abc.sh, et le bâton à la fois abc.sh et abc.py dans votre répertoire cgi-bin.

Ensuite, vous devriez être en mesure de visiter example.com/cgi-bin/abc.sh, qui va exécuter le script Python.

+0

Hacktastic - Je l'aime :-) Un ajout que je suggère de laisser passer les arguments: Changer './abc.py 2> & 1' en' ./abc.py \ 'echo $ QUERY_STRING | sed 's /% 20// g' \ '2> & 1' Maintenant vous pouvez passer des paramètres dans l'URL depuis votre navigateur, comme vous pouvez le faire sur la ligne de commande: example.com/cgi-bin/abc .sh arg1 arg2 arg_etc ;-P –

+0

Le seul problème avec cela est que vous pourriez accidentellement vous ouvrir aux exploits ... Je préfère utiliser './abc.py" $ QUERY_STRING "', puis laisser le script python gérer il. –

Questions connexes