现在位置: 首页 > HTTP协议
tinyhttpd 是一个不到 500 行的超轻量型 Http Server,用来学习非常不错,可以帮助我们真正理解服务器程序的本质。 看完所有源码,真的感觉有很大收获,无论是 unix 的编程,还是 GET/POST 的 Web 处理流程,都清晰了不少。废话不说,开始我们的 Server 探索之旅。 项目主页:http://sourceforge.net/projects/tinyhttpd/ 主要函数: void accept_request(int); void bad_request(int); void cat(int, FILE *); void cannot_execu...
阅读全文
2019-05-16 05:25 工业·编程 ⁄ 共 702字 暂无评论
我们都知道,如果我们打开浏览器/www.baidu.com/几秒后就会跳转出百度的首页,接下来就讲解一下这个过程!! 1.解析URL 首先浏览器会检测这个url是否正确存在,如果不合法,将会返回一个默认的搜索引擎。 如果存在并合法,那么可以解析得到协议(http或者https)、域名(baidu)、资源(首页)等信息。 2.DNS查询 浏览器会先检查域名信息是否在缓存中。 再检查域名是否在本地的Hosts文件中。 如果还不在,那么浏览器会向DNS服务...
阅读全文
2016-04-07 22:24 工业·编程 ⁄ 共 9595字 暂无评论
Overview main() –> startup() –> accept_request() –> execute_cgi() Main senario: Establish a web server step 建立连接– accept connection from client Accept request – 读取一条HTTP报文 Handle request – 解释报文,采取行动 访问资源 – 访问报文中指定的资源 构建报文 – 创建带有正确HTTP首部的报文 发送响应 – give the response to client 记录事务处理过程 – record the step into log ...
阅读全文
2016-04-06 22:08 工业·编程 ⁄ 共 1336字 暂无评论
一、FTP(File Transfer Protocol)     文件传输协议是Internet上使用非常广泛的一种通讯协议,它是为Internet用户进行文件传输(包括文件的上传和下载)而制定的。 用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上...
阅读全文
2016-04-05 21:58 工业·编程 ⁄ 共 25805字 暂无评论
一、概念 协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。 HTTP协议,即超文本传输协议(Hypertext transfer protocol)。是一种详细规定了浏览器和万维网(WWW = World Wide Web)服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。 HTTP协议是用于从WWW服务器传输超文本...
阅读全文
2016-04-04 21:04 工业·编程 ⁄ 共 4700字 暂无评论
HTTP是很常见的协议,虽然用得很多,但对细节的了解却是很浅,这回通过向服务端上传文件信息来理解细节。网络库的选择:1、WinHTTP是windows下常用的库;2、CURL是广受喜爱的开源库。对于我来说,libcurl最大的优点是使用方便,可以把注意力更多的集中到业务层上,提高工作效率,避免重造轮子;缺点是略大(MD编译有264KB,MT编译有340KB),不像WinHTTP可以由windows操作系统集成。下边展示如何使用这两种网络库实现表单POST文...
阅读全文