web安全基础

以前学过的东西都没怎么整理,比较杂乱,现在通过写博客,整理一下自己学过的东西,温习一下,会有不同的收获。

基础协议

HTTP:即超文本传输协议,是一种无状态的协议,只能由客户端发起。(无状态是指WEB浏览器和WEB服务器之间不需要建立持久的连接),使用80端口进行连接,信息属于明文传输。

HTTPS:其实就是HTTP的“升级”版本,在HTTP下加入了SSL层。即通过安全传输机制进行传送数据,所以比HTTP协议要安全一些,使用443端口进行连接。(一般需要到CA申请证书)

Telnet:是TCP/IP协议中的一员,是intelnet远程登陆服务的标准协议和主要方式。默认23端口

FTP:文件传输协议是TCP/IP协议中的一员,默认端口为20、21端口

B/S:浏览器/服务端架构

C/S:客户端/服务端架构

HTTP状态码:

  • 1XX:信息提示,表示请求已经被成功接收,继续处理。范围:100~101
  • 2XX:成功,服务器成功的处理了请求。范围:200~206
  • 3XX:重定向,用于告诉浏览器客户端访问的资源已被移动。范围:300~305
  • 4XX:客户端错误,比如:一个不存在的URL。范围:400~415
  • 5XX:服务端错误,比如服务器运行出错。范围:500~505

HTTP请求头:

Accept:告诉服务端自己接受的什么内容类型、*/*表示任何类型、type/*表示该类型下的任何子类型、type/sub-type

Accept-Charset:告诉服务端自己接受的字符集

Accept-Encoding:浏览器申明自己接受的编码方法,通常指压缩方法、是否支持压缩、支持什么压缩方法(gzip、deflate)

Accept-Language:浏览器申明自己接受的语言

Authorization:当客户端接受来自web服务器的www-Authenticate响应时、返回自己的身份验证信息给web服务器

if-match:如果对象的Etag没有改变,即:对象没有改变,才执行的请求动作,获取文档

if-none-match:如果对象的Etag改变了,即:对象改变,才执行的请求动作,获取文档

if-Range:浏览器告诉web服务器,如果我请求的对象没有改变,就把我缺少的部分给我,如果对象改变了,就把整个对象给我。浏览器通过发送请求对象的Etag 或者自己所知道的       最后修改时间给web服务器,让其判断对象是否改变,总是和 Range 一起使用

Range:浏览器告诉服务器自己想取对象的哪一部分

referer:浏览器向web服务器表明自己时从那一个url进入到当前网页的,即:上一个页面

User-Agent:浏览器表明自己的身份,时哪种浏览器

 

HTTP响应头:

Conten-Encoding:文档的编码方法

Conten-Length:表示内容长度,只有在浏览器进行持久的HTTP连接的时候才需要这个数据

Conten-type:表示后面的文档属于什么MIME类型

set-cookie:设置和页面关联的cookie

www-Authenticate:客户应该在Authorization 头中提供什么类型的授权信息

Location:客户应当去哪里提取文档,用于接受端定位到资源的位置(重定向)

Allow:服务器支持哪些请求方法

Accept-Ranges:web服务器表明自己是否接受某个实体的一部分,bytes:表示接受、none:表示不接受

Refresh:1;url=http://www.baidu.com 隔多少秒之后,让当前页面去访问哪个页面

Etag:资源特定版本的标识符,这可以让缓存更高效,并节省带宽,因为如果内容没有改变,Web服务器不需要发送完整的响应。而如果内容发生了变化,使用ETag有助于防止资源的同时更新相互覆盖(“空中碰撞”)。

Last-Modified:web服务器认为对象的最后修改时间

 

ps:就先写到这吧,以后在更新

 

posted @ 2019-09-17 15:12  蹲在路边吃红薯  阅读(188)  评论(0编辑  收藏  举报