zoukankan      html  css  js  c++  java
  • 计算机网络相关知识(http状态码 && 首部字段)

    计算机网络相关知识

      计算机网络的知识还是非常重要的, 这里做一个简单的总结。

      推荐阅读文章:http://www.cnblogs.com/TankXiao/archive/2012/02/13/2342672.html

      参考文章:http://kb.cnblogs.com/page/168720/

      

    第一部分:http状态码详解

      一. http状态码是什么,作用?

       作用: web服务器告诉客户端,发生了什么事情。

      

      二、http状态码的分类是怎么样的?

       状态码一般分为5类:

      

      比如我们常见的 200 ok, 表示请求成功; 又如我们常见的404 not found ,即客户端错误,请求的资源不存在。 

      tips:  比如我们得到了一个状态码 100 ,不知道具体是什么意思,  但是只要我们确定了它在 1XX范围即可,就是信息提示作用。

      

      三、常见的状态码有哪些? && 我们必须要记住的状态码有哪些?

        一般人只需要了解下面几种状态码即可,因为下面的这几种状态码都是最常见的。

      

      即一般情况下的网页都是200 ok,而如果我们请求的资源更改了URL,就会提示301或者是302,404也是最常见的状态码。 

      下面的几个部分我们主要按照之前的分类来讲解状态码:

      

      四:1XX 信息提示状态码

        1XX类型的状态码主要是在 http 1.1 中引入的,至今我还没在实际中见过这些状态码,不知道存在的意义是什么,知道 1XX状态码是信息提示作用就ok啦!

      

      

      五: 2XX成功的状态码

       2XX类型的状态码一般是表示请求成功的,见过最多的就是其中的200 ok 了。

      

      其中,我们还应该注意 200 ok   202 请求已经接收,但是服务器尚未处理 204 没有内容 以及 206 部分请求成功。

      六. 3XX重定向状态码

       重定向状态码用来告诉浏览器客户端,它们访问的资源已被移动, Web服务器发送一个重定向状态码和一个可选的Location Header, 告诉客户端新的资源地址在哪。

       值得注意的是,浏览器这时候会重新发送在Location中的url来请求资源,只是对于用户来说是透明的。 

       301 和 302 非常类似,只是一个是临时转移,一个是暂时转移。

         这一部分中,最重要的还是 302 和 304 了, 304表示使用缓存。

      

      

      七. 4XX客户端错误

      有时候客户端会发送一些服务器无法处理的东西,比如错误格式的Request,或者最常见的是: 我们请求了一个并不存在的url,就会导致4XX客户端错误,当然其中最重要的还是404 not found。

      在下面的一些状态码中,我们需要格外注意: 400 Bad Request 错误的请求 。  403 Forbidden 即请求被服务器端禁止。  404 not found 资源没有找到。 

       

      

       八. 5XX服务器端错误

             有时候客户端发送了一个正确的Request,但是web服务器可能挂了,或者暂时不能运行,这时就会报告5XX错误,也就是说5XX错误是用来描述服务器端错误的。

      

      

     

    第二部分: 首部字段

    via  

      表示某个资源的获取通过了哪些代理服务器, 如某张图片的via: cache27.l2nu29[0,304-0,H], cache42.l2nu29[0,0], kunlun7.cn44[0,200-0,H], kunlun10.cn44[2,0] 可以看到,这张图片的获取通过了4个代理服务器。 

      

      http首部字段很多,并且它是可以扩展的,除了我们知道的很多标准的http首部字段,还有一些是web服务器和浏览器应用上,出现的各种非标准的首部字段,接下来,我们就对一些比较常用的首部字段进行说明:

    • X-Frame-Options
    • X-XSS-Protection
    • DNT
    • P3P

      

    X-Frame-Options

      首部字段X-Frame-Options属于HTTP响应首部,用于控制网站内容在其他的web网站的Frame标签中的显示问题。其主要的目的是为了防止点击劫持(clickjacking)攻击。

      首部字段X-Frame-Options的值可以是下面的两个:

    • DENY 拒绝
    • SAMEORIGIN 仅仅是同源域名下的页面匹配时许可。 比如 http://hackr.p/sample.html 页面为 SAMEORIGIN 时, 那么hackr.p上的所有的页面的frame都是可以加载这个sample.html的,但是example.com等其他域名的页面就不行了。

      

    X-XSS-Protection

      这个字段的值可以是0或者1. 它属于http响应首部,它是针对跨站脚本攻击的一种对策,用于控制浏览器XSS防护机制的开关。 

      该首部指定的字段值如下所示:

    • 0 将xss过滤设置为无效状态。
    • 1 将xss过滤设置为有效装填。

    DNT

      首部字段DNT属于http请求首部,其中DNT市值Do Not Track 的简称,意思就是决绝个人信息被收集, 是表示拒绝被精准广告追踪的一种方法。DNT首部字段可以设置如下;

    • 0 同意被追踪
    • 1 不同意被追踪

      

      

  • 相关阅读:
    微软一站式示例代码库(中文版)20110924版本, 新添加ASP.NET, Windows Base, Silverlight, WinForm等20个Sample
    Expression Blend实例中文教程系列文章汇总
    【分享】Silverlight 探秘系列课程汇总(下载)
    【分享】分享几个不错的富文本编辑器插件
    推荐 10 个优秀的 HTML5 编码工具
    SQLite数据库操作类
    每天写出好代码的5个建议
    ASP.NET中26个常用性能优化方法
    ConnectString中enlist设置的含义
    使用VS2008打开VS2010的解决方案
  • 原文地址:https://www.cnblogs.com/zhuzhenwei918/p/6533822.html
Copyright © 2011-2022 走看看