2010-08-07 18 views
4

J'essaye de configurer le CGIHTTPServer de Python sur Mac OS X pour pouvoir servir les scripts CGI localement, mais il semble que je ne puisse pas le faire.Servir des scripts Python avec CGIHTTPServer sous Mac OS X

J'ai un script de test simple:

#!/usr/bin/env python 

import cgi 

cgi.test() 

Il dispose d'autorisations [email protected] et est situé dans ~/WWW (avec des autorisations drwxr-xr-x). Il fonctionne très bien de la coquille et j'ai ce script pour les servir en utilisant CGIHTTPServer:

import CGIHTTPServer 
import BaseHTTPServer 

class Handler(CGIHTTPServer.CGIHTTPRequestHandler): 
    cgi_directories = ["~/WWW"] 

PORT = 8000 

httpd = BaseHTTPServer.HTTPServer(("", PORT), Handler) 
print "serving at port", PORT 

Mais quand je le lance, va localhost:8000 sert seulement le contenu du script, pas le résultat (il donne dos le code, pas la sortie).

Qu'est-ce que je fais mal?

Répondre

4

Les chemins de cgi_directories sont comparés à la partie chemin de l'URL et non au chemin du système de fichiers réel. Le réglage à ["/"] ou [""] fonctionnera probablement mieux.

+0

oui! ça l'a fait! Merci! – thepandaatemyface