Yur*_*ura 16 python cgi http python-3.x
我使用的是Windows 7和Python 3.4.3.我想在浏览器中运行这个简单的helloworld.py文件:
print('Content-Type: text/html')
print( '<html>')
print( '<head></head>')
print( '<body>')
print( '<h2>Hello World</h2>')
print( '</body></html>')
Run Code Online (Sandbox Code Playgroud)
我所做的是:
1)转到命令行C:\Python(安装python的地方)
2)运行: python -m http.server
3)到Firefox并输入 http://localhost:8000/hello.py
但是,浏览器只打印hello.py文件的内容,而不是"Hello World".
我该如何解决?
jfs*_*jfs 16
CGIHTTPRequestHandler可以通过传递--cgi选项在命令行中启用:
$ python3 -m http.server --bind localhost --cgi 8000
Run Code Online (Sandbox Code Playgroud)
把你的脚本放入cgi_directories:
这默认为
['/cgi-bin', '/htbin']并描述了要视为包含CGI脚本的目录.
在浏览器中打开:
$ python -mwebbrowser http://localhost:8000/cgi-bin/hello.py
Run Code Online (Sandbox Code Playgroud)
其中hello.py:
#!/usr/bin/env python3
print("Content-Type: text/html\n")
print("<!doctype html><title>Hello</title><h2>hello world</h2>")
Run Code Online (Sandbox Code Playgroud)
我必须让它在POSIX上可执行:chmod +x cgi-bin/hello.py.