分类

  • 软件天地

  • 从HTTP服务器状态代码分析‖
    由空行终止。HTTP/1.0中没
     合法回应。实际上,它们
    临时回应。临时回应由状态行(
    有定义任何1xx的状态代码,所
    主要用于实验用途,这已经超出
    Status-Line)及可选标题组成,
    以它们不是对HTTP/1.0请求的  
    本文档的范围。
      1.2 成功2xx(Successful 2xx)                           
      表示客户端请求被成功接收、理解、接受。                                       
      200 OK                                                                 
      请求成功。回应的信息依赖于请求所使用的方法,如下:                           
      GET 要请求的资源已经放在回应的实体中了。                                 
      HEAD 没有实体主体,回应中只包括标题信息。                             
      POST 实体(描述或包含操作的结果)。                                     
      201 Created                                                       
      请求完成,结果是创建
    应在发出该状态代码前创建
    回应主体中给出提示,否则
    了新资源。新创建资源的URI可
    该资源。如果该操作不能立即完
    ,服务器端应回应202(可被接
    在回应的实体中得到。原始服务器
    成,服务器必须在该资源可用时在
    受)。
      在本文定义的方法,只有POST可以创建资源。                                 
      202 Accepted                                                     
      请求被接受,但处理尚
    ,在这种情鱿拢挥邪旆?br>
    未完成。请求可能不一定会最终
    在异步操作中重新发送状态代码
    完成,有可能被处理过程随时中断

      202回应是没有义务的,这样做的目
    结束,就可以响应其它过程的请求(象每
    的是允许服务器不必等到用户代理和服务器间的连接
    天运行一次的,基于批处理的过程)。
      在某些回应中返回的实体中包括当前
    实现的评估信息。
    请求的状态指示、状态监视器指针或用户对请求能否

      204 No Content                                                 
      服务器端已经实现了请
    新自身的文档视图。该回应
    语句的输入及其它操作。该
    用户代理激活视图中的文档
    求,但是没有返回新的信息。如
    主要是为了在不影响用户代理激
    回应还可能包括新的、以实体标
    所使用。
    果客户是用户代理,则勿需为此更
    活文档视图的前提下,进行script
    题形式表示的元信息,它可被当前

      1.3 重定向(Redirection 3xx)                             
      该类状态码表示用户代理要想完成请
    的请求是GET或HEAD时,才可由用户代理
    要对请求进行5次以上的重定向操作,这
    求,还需要发出进一步的操作。这些操作只有当后跟
    来实现,而不用与用户进行交互。用户代理永远也不
    样可能导致无限循环。
      300 Multiple Choices                                     
      该状态码不被HTTP/1.0
    个可用的被请求资源。
    的应用程序直接使用,只是做为

    3xx类型回应的缺省解释。存在多

      除非是HEAD请求,否则
    用户代理来决定哪个是最适
    回应的实体中必须包括这些资源
    合的。
    的字符列表及位置信息,由用户或

      如果服务器有首选,它
    理会根据此域的值来实现自
    应将对应的URL信息存放在位置
    动的重定向。
    域(Location field)处,用户代

      301 Moved Permanently                                   
      请求到的资源都会分配一个永久的UR
    辑链接功能的客户端会尽可能地根据服务
    须由回应中的位置域指定。除非是HEAD请
    包括对新URL超链接的简要描述。
    L,这样就可以在将来通过该URL来访问此资源。有编
    器端传回的新链接而自动更新请求URI。 新的URL必
    求,否则回应的实体主体   (Entity-Body)必须

      如果用POST方法发出请求,而接收到
    则用户代理不必自动重定向请求,因为这
    301回应状态码。在这种情况下,除非用户确认,否
    将导致改变已发出请求的环境。
      注意:当在接收到301
    将其改为GET请求。
    状态码后而自动重定向POST请求

    时,一些现存的用户代理会错误地

      302 Moved Temporarily                                    
      请求到的资源在一个不
    请求URI来发出以后的请求
    应的实体主体 (Entity-Bo
    同的URL处临时保存。因为重定
    。新的URL必须由回应中的位置
    dy)必须包括对新URL超链接的
    向有时会被更改,客户端应继续用
    域指定。除非是HEAD请求,否则回
    简要描述。
      如果用POST方法发出请求,而接收到
    则用户代理不必自动重定向请求,因为这
    302回应状态码。在这种情况下,除非用户确认,否
    将导致改变已发出请求的环境。
      注意:当在接收到302
    将其改为GET请求。
    状态码后而自动重定向POST请求

    时,一些现存的用户代理会错误地

      304 Not Modified                                             
      如果客户端成功执行了
    来就没有更新过,服务器应
    只应包括一些相关信息,比
    无关的修改。相关标题域的
    生变化,缓存都应当对缓存
    条件GET请求,而对应文件自If-
    当回应此状态码,而不是将实体
    如缓存管理器、与实体最近更新
    例子有:日期、服务器、过期时
    的实体进行更新。
    Modified-Since域所指定的日期以
    主体发送给客户端。回应标题域中
    (entity's Last-Modified)日期
    间。每当304回应中给出的域值发

      1.4 客户端错误(Client Error )4xx                       
      4xx类的状态码表示客户端发生错误
    应当立即终止向服务器发送数据。除了回
    器端都必须在回应的实体中包含错误状态
    。如果客户端在收到4xx代码时请求还没有完成,它
    应HEAD请求外,不论错误是临时的还是永久的,服务
    的解释。这些状态码适用于任何请求方法。
      注意:如果客户端正在
    入连接之前收到回应包。如
    发送一个复位包,清空客户

    发送数据,服务器端的TCP实现
    果客户端在关闭后仍旧向服务器
    端尚未处理的输入缓冲区,以终

    应当小心,以确保客户端在关闭输
    发送数据,服务器会给客户  端
    止HTTP应用程序的读取、解释活动

      400 非法请求(Bad Request)                                   
      如果请求的语法不对,服务器将无法
    服务器重复发送该请求。
    理解。客户端在对该请求做出更改之前,不应再次向

      401 未授权(Unauthorized)                                   
      请求需要用户授权。回
    式请求资源。客户端应使用
    了授权信任信息,那回应的
    还是返回401状态代码,用
    信息。HTTP访问授权会在11
    应中的WWW-Authenticate标题域
    合适的授权标题域(10.2节)来
    401表示此授权被拒绝。如果用
    户应当察看一下回应的实体,因
    节中解释。
    (10.16节)应提示用户以授权方
    重复该请求。如果请求中已经包括
    户代理在多次尝试之后,回应一样
    为在实体中会包括一些相关的动态

      403 禁止(Forbidden)                                           
      服务器理解请求,但是
    请求。如果不是用HEAD请求
    会将拒绝原因写在回应实体
    其它的回应可用。
    拒绝实现该请求。授权对此没有
    方法,而且服务器端愿意公布请
    中。该状态码一般用于服务器端

    帮助,客户端应当停止重复发送此
    求未被实现原因的前提下,服务器
    不想公布请求被拒绝的细节或没有

      404 没有找到(Not Found)                                       
      服务器没有找到与请求URI相符的资
    的。如果服务器不希望为客户端提供这方
    源。404状态码并不指明状况是临时性的还是永久性
    面的信息,还回应403(禁止)状态码。
      1.5 服务器错误(Server Error )5xx                       
      回应代码以‘5’开头
    果客户端在收到5xx状态码
    HEAD请求外,服务器应当在
    的。
    的状态码表示服务器端发现自己
    时,请求尚未完成,它应当立即
    其回应实体中包括对错误情况的

    出现错误,不能继续执行请求。如
    停止向服务器发送荨3嘶赜?br>解释、并指明是临时性的还永久性

      这类回应代码没有标题域,可适用于任何请求方法。                                
      500 服务器内部错误(Internal Server Error)         
      服务器碰到了意外情况,使其无法继续回应请求。                                 
      501 未实现(Not Implemented)                             
      服务器无法提供对请求中所要求功能
    态代码,这意味着不能回应请求所要求的
    的支持。如果服务器无法识别请求方法就会回应此状
    任何资源。
      502 非法网关(Bad Gateway)                                   
      充当网关或代理的服务器从要发送请
    求的上游(upstream)服务器收到非法的回应。
      503 服务不可用(Service Unavailable)                 
      服务器当前无法处理请
    情况是暂时性的,要产生一
    求。这一般是由于服务器临时性
    些延迟。
    超载或维护引起的。该状态码暗示

      注意:503状态码并没
    在超载时采用简单处理,即
    有暗示服务器在超载时一定要返
    断掉连接。
    回此状态码。一些服务器可能希望


    上一页 下一页




    map