在Mac OS X上使用CGIHTTPServer提供Python脚本

时间:2010-08-07 20:48:43

标签: python macos cgi

我正在尝试在Mac OS X上设置Python的CGIHTTPServer以便能够在本地提供CGI脚本,但我似乎无法做到这一点。

我有一个简单的测试脚本:

#!/usr/bin/env python

import cgi

cgi.test()

它具有权限-rwxr-xr-x@,位于~/WWW(具有权限drwxr-xr-x)。它从shell运行得很好,我有这个脚本使用CGIHTTPServer

来提供它们
import CGIHTTPServer
import BaseHTTPServer

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

PORT = 8000

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

但是当我运行它时,转到localhost:8000只是提供脚本的内容,而不是结果(即它返回代码,而不是输出)。

我做错了什么?

1 个答案:

答案 0 :(得分:4)

cgi_directories中的路径与URL的路径部分匹配,而不是实际的文件系统路径。将其设置为["/"][""]可能会更好。