摘要
这篇文档展示了Python如何融入到web中。它介绍了几种Python结合web服务器的方法,以及开发网站的一些常规做法。
“Web 2.0”是指由用户主导网站内容的创作。自从这个概念兴起以来,网络编程就成为了一个热门话题。一直以来,用Python创建网站是相当繁琐的,所以也很少有人这么做。因此人们创建了许多框架和辅助工具来帮助开发者创建更快更可靠的网站。这篇HOWTO介绍了几种Python结合web服务器创建动态内容的方法。当然,因为这个话题涉及的内容太广,很难在单独的一篇文档里进行详细的描述。所以这里就只对一些当前流行的库作简要的概述。
参见:这篇HOWTO试图对Python的Web开发作一个概览,但不能总是按预期及时地更新。Python的Web开发正在迅速发展,所以wiki上的Web Programming可能与近期的发展更为接近。
底层视角
当一个用户访问网站时,他们的浏览器会与网站的服务器进行连接(这称为请求)。服务器在文件系统中寻找文件,并将其发送回用户的浏览器(这称为响应)。这就是底层HTTP协议的大致工作原理。动态网站不是基于文件系统中的文件,而是以程序为基础。当请求到来,运行在服务器上的程序就会生成相应内容并发送回用户。它们可以处理用户的各种数据,例如列出公告板上的帖子,显示你的邮件,配置软件,或者只是显示当前时间。这些程序能用服务器支持的任意语言完成。自从大部分的服务器开始支持Python,用Python创建动态网站就变得十分简单了。
大多数的HTTP服务器是用C或者C++写的,它们不能直接执行Python代码,所以服务器和程序之间就需要有一座桥。网桥,或者更确切地称为接口,决定了程序如何与服务器进行交互。
延伸阅读
- ssh框架 2016-09-30
- 阿里移动安全 [无线安全]玩转无线电——不安全的蓝牙锁 2017-07-26
- 消息队列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 论文笔记【图片目标分割】 2017-07-26
- 词向量-LRWE模型-更好地识别反义词同义词 2017-07-26
- 从栈不平衡问题 理解 calling convention 2017-07-26
- php imagemagick 处理 图片剪切、压缩、合并、插入文本、背景色透明 2017-07-26
- Swift实现JSON转Model - HandyJSON使用讲解 2017-07-26
- 阿里移动安全 Android端恶意锁屏勒索应用分析 2017-07-26
- 集合结合数据结构来看看(二) 2017-07-26
学习是年轻人改变自己的最好方式