http协议:超文本传输协议,主要用于web服务,处理文本信息,格式为html(超文本标记语言)
版本:0.9 :仅仅只提供用户传输html文档
1.0:引入了MIME机制,多用途互联网邮件扩展,引入这个机制之后,http支持发送多媒体信息。并且还引入了keep-alive机制,支持持久链接的功能。同时,还支持缓存功能
1.1:支持更多的请求方法和更加精细的缓存控制以及直接持久的功能
2.0:提供了http的语义的优化传输,能够加速http的数据交换
目前最常用的版本是:1.0和1.1
二:HTML文档生成的方式
1,静态:事先通过编辑定义完成
访问流程:web服务器向内核注册socket,客户端通过浏览器向web服务器发起request请求,web服务器街道客户端的request的信息(如果用户请求的资源在本地服务器,http服务会向系统内核申请调用磁盘数据,并将资源返回给客户端)
2,动态:jsp ,php,.net等(需要有相关的解释器)
在静态的基础之上,http服务会调用后端的解析器,由动态语言去处理用户的请求。
三:http的请求方法
1,get用于客户端请求指定资源信息,并返回指定资源实体
2,head不需要服务器响应请求资源,返回响应首部
3,post基于HTML表单向服务器提交数据,服务器通常需要存储数据,通常放在mysql关系型数据库当中
四:http如何并发接受多个用户请求
http工作在阻塞模型下,默认一次只能接受一个请求,处理完之后,在去处理其他请求。所以,只能一个一个来
如果希望响应多个用户请求,需要多进程模型。web服务器自己会生成多个子进程来响应用户请求。