无需规则自动采集(302Movetemporarilytemporarily请求的资源临时从不同的URI响应请求)

优采云 发布时间: 2022-04-08 03:05

  无需规则自动采集(302Movetemporarilytemporarily请求的资源临时从不同的URI响应请求)

  302 暂时移动

  请求的资源临时响应来自不同 URI 的请求。由于这种重定向是临时的,客户端应该继续向原创地址发送未来的请求。仅当在 Cache-Control 或 Expires 中指定时,此响应才可缓存。

  上文提到的。

  如果这不是 GET 或 HEAD 请求,除非用户确认,否则浏览器会禁止自动重定向,因为请求的条件可能会相应改变。

  注意:虽然 RFC 1945 和 RFC 2068 规范不允许客户端在重定向时更改请求的方法,但是很多现有的浏览器将 302 响应视为 303 响应并使用 GET 来访问 Location 中指定的 URI,而忽略了该方法最初要求。添加了状态代码 303 和 307 以阐明服务器期望客户端的响应。

  303 查看其他

  可以在另一个 URI 中找到对当前请求的响应,并且客户端应该使用 GET 来访问该资源。此方法的存在主要是为了允许将脚本激活的 POST 请求输出重定向到新资源。这个新的 URI 不是对原创资源的替代引用。此外,不得缓存 303 响应。当然,第二个请求(重定向)可能会被缓存。

  注意:许多早于 HTTP/1.1 的浏览器不能正确理解 303 状态。如果与这些浏览器的交互是一个问题,302 状态码应该可以解决问题,因为大多数浏览器处理 302 响应的方式与上述规范要求客户端处理 303 响应的方式完全相同。

  304 未修改

  如果客户端发送了条件 GET 请求并且请求被允许,但文档的内容(自上次访问或根据请求的条件)没有改变,则服务器应该返回此状态代码。304 响应不得收录消息正文,因此它始终以标头后的第一个空行结束。

  响应必须收录以下标头:

  日期,除非此服务器没有时钟。如果没有时钟的服务器遵循这些规则,则代理和客户端可以将 Date 字段添加到接收到的响应标头(如 RFC 2068 中所指定),并且缓存机制将起作用。

  ETag 和/或 Content-Location,如果相同的请求会返回 200 响应。

  Expires、Cache-Control 和/或 Vary,如果值可能与之前相同变量的其他响应对应的值不同。

  如果此响应请求使用强缓存验证,则此响应不应收录其他实体标头;否则(例如,条件 GET 请求使用弱缓存验证),此响应不得收录其他实体标头;这避免了缓存的实体内容和更新的实体标头信息之间的不一致。

  如果一个 304 响应表明一个实体当前没有被缓存,缓存系统必须忽略这个响应并在没有限制的情况下重复请求。

  如果收到要求更新缓存条目的 304 响应,则缓存系统必须更新整个条目以反映响应中更新的所有字段的值。

  305 使用代理

  请求的资源必须通过指定的代理访问。指定代理的 URI 信息将在 Location 字段中给出。接收方需要通过这个代理反复发送单独的请求来访问相应的资源。只有源服务器可以构建 305 响应。

  注意:RFC 2068 未指定 305 响应旨在重定向单个请求,并且只能由源服务器建立。忽略这些限制可能会产生严重的安全后果。

  306切换代理

  在最新版本的规范中,不再使用 306 状态码。

  307临时重定向

  请求的资源临时响应来自不同 URI 的请求。

  新的临时 URI 应该在响应的 Location 字段中返回。除非这是一个 HEAD 请求,否则响应的实体应该收录一个指向新 URI 的超链接和一个简短的描述。因为有些浏览器无法识别307响应,所以需要在上面添加必要的信息,以便用户理解并发出对新URI的访问请求。

  如果这不是 GET 或 HEAD 请求,除非用户确认,否则浏览器会禁止自动重定向,因为请求的条件可能会相应改变。

  4 前缀状态码

  这类代码一般采集网站无法响应浏览器请求,主要是URL链接无效

  此链接无法再打开。比如网站中的一个产品或者一条新闻已经下架或者删除了,但是网页中的链接没有被删除,或者有可能在有过期链接的规则里直接打开。

  400 错误请求

  1、语义错误,服务器无法理解当前请求。除非修改,否则客户端不应重复提交此请求。

  2、请求参数不正确。

  401未经授权

  当前请求需要用户身份验证。响应必须收录一个适合所请求资源的 WWW-Authenticate 标头,以向用户询问信息。客户端可以重新提交带有适当授权头的请求。如果当前请求已经收录授权证书,则 401 响应意味着服务器验证了这些证书已被拒绝。如果 401 响应收录与前一个响应相同的身份验证挑战,并且浏览器已经尝试了至少一次身份验证,则浏览器应该向用户呈现响应中收录的实体信息,其中可能收录相关的诊断信息。

  402 需要付款

  此状态码是为将来可能的需要而保留的。

  403 禁止

  服务器已理解该请求,但拒绝执行它。与 401 响应不同,身份验证无济于事,并且不应重新提交请求。如果这不是 HEAD 请求,并且服务器希望能够阐明为什么无法执行请求,则应在实体内描述拒绝的原因。当然,如果服务器不希望客户端获取任何信息,它也可以返回 404 响应。

  404 未找到

  请求失败,在服务器上找不到请求的资源。没有信息可以告诉用户这种情况是暂时的还是永久性的。如果服务器知道情况,应该使用 410 状态码通知旧资源由于某些内部配置机制问题永久不可用,并且没有地址可以跳转。当服务器不想确切地揭示请求被拒绝的原因或没有其他合适的响应可用时,404 状态代码被广泛使用。此错误最可能的原因是该页面在服务器端不可用。

  405 方法不允许

  请求行中指定的请求方法不能用于请求相应的资源。响应必须返回一个 Allow 标头,指示当前资源可以接受的请求方法列表。

  鉴于 PUT 和 DELETE 方法会写入服务器上的资源,因此大多数 web 服务器在默认配置下不支持或不允许上述请求方法,并且对于此类请求会返回 405 错误。

  406 不可接受

  请求资源的内容属性不满足请求头中的条件,因此无法生成响应实体。

  除非这是一个 HEAD 请求,否则响应应该返回一个收录实体属性和地址列表的实体,用户或浏览器可以从中选择最合适的实体。实体的格式由 Content-Type 标头中定义的媒体类型决定。浏览器可以根据格式和自身能力自行做出最佳选择。但是,该规范没有定义进行此类自动选择的任何标准。

  407 需要代理身份验证

  类似于 401 响应,除了客户端必须在代理服务器上进行身份验证。代理服务器必须为身份查询返回一个 Proxy-Authenticate。客户端可以返回一个 Proxy-Authorization 头进行认证。

  408 请求超时

  请求超时。在服务器准备等待的时间内,客户端没有完成请求。客户端可以随时再次提交此请求,而无需进行任何更改。

  409 冲突

  由于与所请求资源的当前状态冲突,无法完成请求。仅当认为用户能够解决冲突并将重新提交新请求时,才允许使用此代码。响应应该收录足够的信息,以便用户发现冲突的根源。

  冲突通常发生在处理 PUT 请求的过程中。例如,在使用版本检查的环境中,PUT提交的特定资源的修改请求附带的版本信息与之前的(第三方)请求冲突,那么服务器此时应该返回409错误. 通知用户请求无法完成。此时,响应实体可能会收录两个冲突版本之间的差异比较,以便用户可以在合并后重新提交新版本。

  410 走了

  请求的资源在服务器上不再可用,并且没有任何已知的转发地址。这种情况应该被认为是永久性的。如果可能,具有链接编辑功能的客户端应在用户许可的情况下删除对该地址的所有引用。如果服务器不知道或无法确定条件是否永久,则应使用 404 状态码。除非另有说明,否则此响应是可缓存的。

  410 响应的目的主要是帮助网站管理员维护网站,通知用户该资源不再可用,并且服务器所有者也希望删除该资源的所有远程连接. 此类事件在限时增值服务中很常见。同样,410 响应用于通知客户端原来属于个人的资源在当前服务器站点上不再可用。当然,将所有永久不可用的资源标记为“410 Gone”以及持续多长时间完全取决于服务器所有者。

  411 长度要求

  服务器拒绝接受没有定义 Content-Length 标头的请求。在添加一个指示请求消息体长度的有效 Content-Length 头后,客户端可以再次提交请求。

  412 前置条件失败

  服务器在验证时未能满足请求标头字段中给出的一个或多个先决条件。此状态码允许客户端在检索资源时在请求的元信息(请求标头字段数据)中设置先决条件,从而防止将请求方法应用于其预期之外的资源。

  413请求实体太大

  服务器拒绝处理当前请求,因为请求提交的实体数据大于服务器愿意或能够处理的数据。在这种情况下,服务器可以关闭连接以阻止客户端继续发送这个请求。

  如果条件是临时的,服务器应该返回一个 Retry-After 响应头来告诉客户端多长时间后重试。

  414 请求 URI 太长

  请求的 URI 比服务器可以解释的要长,因此服务器拒绝为请求提供服务。这种情况比较少见,常见的情况包括:

  本来应该使用 POST 方法的表单提交变成了 GET 方法,导致 Query String 过长。

  重定向 URI “黑洞”,例如每次重定向都使用旧 URI 作为新 URI 的一部分,导致多次重定向后 URI 过长。

  客户端试图通过利用某些服务器中存在的安全漏洞来攻击服务器。此类服务器使用固定长度的缓冲区来读取或操作请求的 URI。当GET后的参数超过一定值时,可能会发生缓冲区溢出,导致任意代码被执行[1]。没有此类漏洞的服务器应返回 414 状态代码。

  415 不支持的媒体类型

  对于当前请求的方法和请求的资源,请求中提交的实体不是服务器支持的格式,所以请求被拒绝。

  416 请求的范围不满足

  如果请求收录 Range 请求头,并且 Range 中指定的任何数据范围与当前资源的可用范围不重合,并且请求没有定义 If-Range 请求头,则服务器应返回 416 状态代码。

  如果 Range 使用的是字节范围,那么这种情况意味着请求指定的所有数据范围的第一个字节位置超过了当前资源的长度。服务器还应该收录一个 Content-Range 实体头,用于在返回 416 状态码时指示当前资源的长度。此响应也禁止使用 multipart/byteranges 作为其 Content-Type。

  417 期望失败

  请求头 Expect 中指定的预期内容不能被服务器满足,或者服务器是代理服务器,有明确的证据表明当前路由的下一个节点不能满足预期内容。

  421来自您的 Internet 地址的连接过多

  从当前客户端的 IP 地址到服务器的连接数超过了服务器允许的最大值。通常,这里的IP地址是指从服务器上看到的客户端地址(如用户的网关或代理服务器地址)。在这种情况下,连接数的计算可能涉及多个最终用户。

  422 无法处理的实体

  请求格式正确,但由于收录语义错误而无法响应。

  423 锁定

  当前资源已锁定。

  424 依赖失败

  当前请求因上一个请求(例如 PROPPATCH)中的错误而失败。

  425 无序集合

  在 WebDav 高级集合草案中定义,但未出现在 WebDAV 有序集合协议中。

  426 需要升级

  客户端应该切换到 TLS/1.0。

  449 重试

  由 Microsoft 扩展以表示应在采取适当的操作后重试请求。

  5、6 前缀状态码

  此类状态码表示采集网站服务器在处理请求的过程中出现错误或异常状态。请检查以下几个方面:

  1. 被 采集网站 服务器崩溃了

  检查网站或采集的目标网页是否可以访问,通常是因为网站内部代码操作错误、崩溃等无法正常访问,优采云也会无法 采集 数据

  对于一些流量不大的网站,平时没有人访问,但是突然流量变大了,网站服务器也不能超载崩溃了。可以尝试调整执行前的等待,降低采集的速度。如果访问速度较慢,可能不会崩溃,如果不能改网站如果非要选这个网站,只能慢慢来。

  2.服务器不稳定 采集网站

  偶尔可以打开,或者打开缓慢且不稳定。您可以在打开网页或单击元素的高级设置中设置重试。

  500内部服务器错误

  服务器遇到了阻止它完成请求处理的意外情况。一般在服务器端的源代码有错误的情况下会出现这个问题。

  501 未实施

  服务器不支持当前请求所需的功能。当服务器无法识别请求的方法并且无法支持其对任何资源的请求时。

  502错误的网关

  作为网关或代理工作的服务器在尝试执行请求时收到来自上游服务器的无效响应。

  503服务不可用

  由于临时服务器维护或过载,服务器当前无法处理请求。这种情况是暂时的,一段时间后会恢复。如果可以预期延迟时间,则响应可以收录一个 Retry-After 标头来指示延迟时间。如果没有给出这个 Retry-After 信息,客户端应该用 500 响应来处理它。

  注意:503状态码的存在并不意味着服务器在过载时必须使用它。一些服务器只是希望拒绝客户端的连接。

  504网关超时

  用作网关或代理的服务器在尝试执行请求时未能及时接收到来自上游服务器(由 URI 标识的服务器,例如 HTTP、FTP、LDAP)或辅助服务器(例如 DNS)的响应。

  注意:某些代理服务器在 DNS 查询超时时会返回 400 或 500 错误

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线