Domyślne katalogi Pythona CGIHTTPServer
Mam następujący minimalny kod dla serwera HTTP obsługującego CGI, pochodzącego z kilku przykładów na wewnętrznych rurkach:
#!/usr/bin/env python
import BaseHTTPServer
import CGIHTTPServer
import cgitb;
cgitb.enable() # Error reporting
server = BaseHTTPServer.HTTPServer
handler = CGIHTTPServer.CGIHTTPRequestHandler
server_address = ("", 8000)
handler.cgi_directories = [""]
httpd = server(server_address, handler)
httpd.serve_forever()
Jednak kiedy wykonuję skrypt i próbuję uruchomić skrypt testowy w tym samym katalogu za pomocą CGIhttp://localhost:8000/test.py
, Widzę tekst skryptu, a nie wyniki wykonania.
Uprawnienia są ustawione poprawnie, a sam skrypt testowy nie stanowi problemu (ponieważ mogę go dobrze uruchomić za pomocąpython -m CGIHTTPServer
, gdy skrypt znajduje się w cgi-bin). Podejrzewam, że problem ma coś wspólnego z domyślnymi katalogami CGI.
Jak mogę uruchomić skrypt?