http协议是一种数据传输协议,是现代因特网中使用的公用语言。在web服务器与web客户端起数据传输的作用。
web服务器使用的是HTTP协议,所以被称为是http服务器,web客户端一般是浏览器。
通过客户端发送http请求,服务器发起http响应。
http会为每一种web传输对象打上MIME类型(Multipurpose Internet Mail Extension,多用途因特网邮件扩展),本来是在邮件系统中的。用来标记多媒体内容。
当web浏览器从服务器中取回一个对象时 ,会查看他的MIME类型,是否知道如何处理这个对象。
例子:
HTML文本:text/html 类型标记
ASCII码文本:text/plain
JEPG格式:image/jepg
Apple的QuickTime电影:video/quicktime
微软的ppt:application/vnd.ms-powerpoint
URI(Uniform Resource Identifier,统一资源标识符)
就像Internet上邮政地址。
分为URL和URN
URL(统一资源定位符)描述一台特定服务器上资源的特定位置。
URL的第一部分被称是方案:说明访问资源所使用的协议
第二部分是服务器的Internet地址
其余部分指定web上的某资源
URN(统一资源名)用同一个名字通过不同的协议来访问web服务器上资源
还未大范围使用
http支持几种不同请求命令,这些命令被称为http方法。
每条http报文返回时都会带回状态码 如:503,404,200,302
http报文分为三部分:
起始行:
在请求报文中说明要做什么
在响应报文说明出现了什么情况(返回状态码)
首部:
都包含一个名字,一个值,
以一个空行结束
主体:
响应报文拥有返回给客户端的数据
请求报文拥有发送给服务器的数据
TCP/IP(Transmission control protocol,传输控制协议)
无差错的数据传输
按序传输
未分段的数据流
在http客户端向服务器端传输发送报文之前,需要用到IP(Internet Protocol,网际协议)地址和端口号在客户端和服务器之间建立一条TCP/IP连接
DNS(Domain Name Service ,域名服务)机制将主机名转换成IP地址
URL中默认的端口号是80。
Telnet可以将键盘和显示器连接到某个TCP端口,用于远程终端对话。还有netcat(被誉为“瑞士军刀”)