在Mac OS X上使用CGIHTTPServer运行Python脚本
我正在尝试在Mac OS X上设置Python的CGIHTTPServer
,希望能够在本地运行CGI脚本,但似乎遇到了一些问题。
我有一个简单的测试脚本:
#!/usr/bin/env python
import cgi
cgi.test()
这个脚本的权限是-rwxr-xr-x@
,并且它位于~/WWW
目录下(这个目录的权限是drwxr-xr-x
)。我从命令行运行这个脚本没有问题,我还用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 个回答
4
cgi_directories
中的路径是和网址中的路径部分进行匹配的,而不是和实际的文件系统路径匹配。所以,如果你把它设置成 ["/"]
或者 [""]
,可能会效果更好。