开发人员应该对IIS理论层的知识了解的多一些~第一讲 什么是Http?

简介:

定义

百度百科定义:超文本传输协议 (HTTP-Hypertext transfer protocol) 是分布式,协作式,超媒体系统应用之间的通信协议。是万维网(world wide web)交换信息的基础。它允许将超文本标记语言 (HTML) 文档从 Web 服务器传送到 Web 浏览器。HTML 是一种用于创建文档的标记语言,这些文档包含到相关信息的链接。您可以单击一个链接来访问其它文档、图像或多媒体对象,并获得关于链接项的附加信息。

OSI层的位置,它位于传输层

HTTP工作在TCP/IP协议体系中的TCP协议上。客户机和服务器必须都支持 HTTP,才能在万维网上发送和接收 HTML 文档并进行交互。

以下是OSI七层模型
第七层:应用层 数据 用户接口,提供用户程序“接口”。
第六层:表示层 数据 数据的表现形式,特定功能的实现,如数据加密。
第五层:会话层 数据 允许不同机器上的用户之间建立会话关系,如WINDOWS
第四层:传输层 段 实现网络不同主机上用户进程之间的数据通信,可靠
与不可靠的传输,传输层的错误检测,流量控制等。
第三层:网络层 包 提供逻辑地址(IP)、选路,数据从源端到目的端的
传输
第二层:数据链路层 帧 将上层数据封装成帧,用MAC地址访问媒介,错误检测
与修正。
第一层:物理层 比特流 设备之间比特流的传输,物理接口,电气特性等。

特点

HTTP协议的主要特点可概括如下:
1、支持客户/服务器模式。
2、 简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
3、灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
4、无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
5、无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。

请求信息

发出的请求信息包括以下几个: 
●请求行,例如GET /images/logo.gif HTTP/1.1,表示从/images目录下请求logo.gif这个文件。 
●(请求)头,例如Accept-Language: en 
●空行 
●可选的消息体 请求行和标题必须以<CR><LF>作为结尾(也就是,回车然后换行)。空行内必须只有<CR><LF>而无其他空格。在HTTP/1.1协议中,所有的请求头,除post外,都是可选的。

请求方法

HTTP/1.1协议中共定义了八种方法(有时也叫“动作”)来表明Request-URI指定的资源的不同操作方式:
OPTIONS 返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器发送'*'的请求来测试服务器的功能性。 
HEAD 向服务器索要与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。 
GET 向特定的资源发出请求。注意:GET方法不应当被用于产生“副作用”的操作中,例如在web app.中。其中一个原因是GET可能会被网络蜘蛛等随意访问。 
POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 
PUT 向指定资源位置上传其最新内容。 
DELETE 请求服务器删除Request-URI所标识的资源。 
TRACE 回显服务器收到的请求,主要用于测试或诊断。 
CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。 
方法名称是区分大小写的。当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Method Not Allowed);当服务器不认识或者不支持对应的请求方法的时候,应当返回状态码501(Not Implemented)。 
HTTP服务器至少应该实现GET和HEAD方法,其他方法都是可选的。当然,所有的方法支持的实现都应当符合下述的方法各自的语义定义。此外,除了上述方法,特定的HTTP服务器还能够扩展自定义的方法。
感谢您的阅读!

本文转自博客园张占岭(仓储大叔)的博客,原文链接:开发人员应该对IIS理论层的知识了解的多一些~第一讲 什么是Http?,如需转载请自行联系原博主。


目录
相关文章
|
6月前
IIS上实现网站朝https://www的自动跳转
我们在做网站时时常有网站朝https://www的自动跳转的需求,以便在不输入www.子域名时也可以自动跳转到我们的当前站点,本文将介绍实现网站朝https://www的自动跳转的操作。
290 0
IIS上实现网站朝https://www的自动跳转
|
5月前
|
网络协议
windows_server2012搭建iis并配置http重定向 iis转发
windows_server2012搭建iis并配置http重定向 iis转发
296 1
|
3月前
【Azure 云服务】Azure Cloud Service 为 Web Role(IIS Host)增加自定义字段 (把HTTP Request Header中的User-Agent字段增加到IIS输出日志中)
【Azure 云服务】Azure Cloud Service 为 Web Role(IIS Host)增加自定义字段 (把HTTP Request Header中的User-Agent字段增加到IIS输出日志中)
|
5月前
|
Windows
iis配置http重定向302转发get请求并去掉最后的斜杠/ iis重定向 iis去除url最后的斜杠 iis重定向链接斜杠(已解决)
iis配置http重定向302转发get请求并去掉最后的斜杠/ iis重定向 iis去除url最后的斜杠 iis重定向链接斜杠(已解决)
148 0
|
6月前
|
存储 网络安全 数据安全/隐私保护
Windows Server 2019 IIS HTTPS证书部署流程详解
Windows Server 2019 IIS HTTPS证书部署流程详解
558 0
|
Linux iOS开发 MacOS
IIS10 部署网站报【HTTP 错误 500.19 - Internal Server Error】的解决办法
原有的 web 发布文件是可以正常部署 IIS10 上面运行的,由于本地电脑环境迁移,重新换了一个宿主机部署 IIS10,网站运行提示如下信息:HTTP 错误 `500.19 - Internal Server Error` 无法访问请求的页面,因为该页的相关配置数据无效。详细错误信息:模块 `IIS Web Core` 通知 `未知 处理程序 尚未确定 错误...
1913 0
IIS10 部署网站报【HTTP 错误 500.19 - Internal Server Error】的解决办法
|
安全
iis的https站点提示(您的连接存在安全隐患)解决办法
iis的https站点提示(您的连接存在安全隐患)解决办法
1463 0
|
安全 网络协议 网络安全
开发人员,怎能没有个人博客!HTTP升级HTTPS,网站部署SSL证书
开发人员,怎能没有个人博客!HTTP升级HTTPS,网站部署SSL证书
261 0
开发人员,怎能没有个人博客!HTTP升级HTTPS,网站部署SSL证书
|
Windows 数据安全/隐私保护 .NET
http转https实战教程iis7.5
HTTP转HTTPS实战教程IIS7.5 (备注:确保IIS安装完成、ASP.NET 等配置无误) 1、          本文以阿里云为例,先在阿里云注册域名并且进行备案。备案完成后,在左侧菜单申请”CA证书服务(数据安全)”,申请完之后会看到以下:   2、          选择web服务软...
2039 0
下一篇
无影云桌面