Python cgi
python cgi编程¶
什么是cgi¶
CGI(Common Gateway Interface),通用网关接口,它是一段程序,运行在服务器上如:HTTP 服务器,提供同客户端 HTML 页面的接口。
为了更好的了解 CGI 是如何工作的,我们可以从在网页上点击一个链接或 URL 的流程:
- 1、使用你的浏览器访问 URL 并连接到 HTTP web 服务器。
- 2、Web 服务器接收到请求信息后会解析 URL,并查找访问的文件在服务器上是否存在,如果存在返回文件的内容,否则返回错误信息。
- 3、浏览器从服务器上接收信息,并显示接收的文件或者错误信息。
CGI 程序可以是 Python 脚本,PERL 脚本,SHELL 脚本,C 或者 C++ 程序等。
cgi架构图¶

如何写python cgi程序¶
- 创建一个py文件
demo.py, 开头写出以下代码
#!C:\Users\oufeng\Anaconda3\python.exe
# -*- coding: UTF-8 -*-
print("Content-type:text/html")
print()
第一行#!C:\Users\oufeng\Anaconda3\python.exe表示python的执行路径
第三行print("Content-type:text/html")表明这是一个网页, 发送到浏览器并告知浏览器显示的内容类型为text/html
还需要再打印一个空行,用于告诉服务器结束头部信息.
- 输出一个网页, 继续写入以下代码
html = '''
<html>
<head>
<meta charset="utf-8">
<title>这是python写的第一个网页</title>
</head>
<body>
<div>
hello, python!
</div>
</body>
</html>
'''
print(html)
- 也就是说,
demo.py的内容是
#!C:\Users\oufeng\Anaconda3\python.exe
# -*- coding: UTF-8 -*-
print("Content-type:text/html")
print()
html = '''
<html>
<head>
<meta charset="utf-8">
<title>这是python写的第一个网页</title>
</head>
<body>
<div>
hello, python!
</div>
</body>
</html>
'''
print(html)