下面是简单的python脚本,你好.py在
import sys
sys.stdout.write("Content-type: text/html \r\n\r\n")
sys.stdout.write("<!doctype html><html><head><title>Hello CGI</title></head>")
sys.stdout.write("<body><Hello CGI</h2></body></html>")
文件被放在目录中
^{pr2}$然后我更改权限
chmod +x hellocgi.py
然后跑
python -m CGIHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...
如果我用http://localhost:8000/cgi-bin/hellocgi.py,
打开浏览器,我会得到:
Error response
Error code 404.
Message: No such CGI script ('/cgi-bin/hellocgi.py').
Error code explanation: 404 = Nothing matches the given URI.
有人能告诉我发生了什么事吗?我还尝试在/Library/WebServer/CGI可执行文件中调整脚本的速度,但这行不通。在
谢谢
脚本需要读取权限,而不是执行权限。python解释器执行时,脚本只是从文件系统中读取的。在
我用一个无效的(不存在的)路径复制了你列出的错误, 所以我建议你重新检查你正在使用的目录以及 文件名和URL的拼写。在
根据文件[1], “这个类用于提供CGI的文件或输出 来自当前目录及以下目录的脚本“ CGIHTTPServer使用的目录树的根目录是 它正在运行。因此,您应该选择一些目录($HOME) 如果您只想做一些测试,/tmp/www/也可以),安装 然后从目录启动服务器。在
[1]http://docs.python.org/2/library/cgihttpserver.html
相关问题 更多 >
编程相关推荐