我想在 Windows 环境中运行一个非常简单的基于 python 的服务器,以测试 CGI 脚本。我想在 Windows 中执行此操作,但最终在 unix 环境中运行。到目前为止,我有一个简单的服务器和一个简单的程序。当我访问该站点时,我看到一个空白页面,源代码中没有任何内容,我无法弄清楚发生了什么。
服务器
from http.server import HTTPServer, CGIHTTPRequestHandler
class Handler(CGIHTTPRequestHandler):
cgi_directories = ["/cgi-bin"]
PORT = 8080
httpd = HTTPServer(("", PORT), Handler)
print("serving at port", PORT)
httpd.serve_forever()
httpd.serve_forever()
应用程序:
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import cgi, cgitb
form = cgi.FieldStorage()
# Get data from fields
first_name = form.getvalue('first_name')
last_name = form.getvalue('last_name')
print ("Content-type:text/html\r\n\r\n")
print ("<html>")
print ("<head>")
print ("<title>Hello - Second CGI Program</title>")
print ("</head>")
print ("<body>")
print ("<h2>Hello %s %s</h2>" % (first_name, last_name))
print ("</body>")
print ("</html>")
我在我的网络浏览器中访问该程序,我得到一个可下载的输出,它是文件的名称。文件似乎已执行,但我没有获得有效的网站。我究竟做错了什么?