4

HEAD和方法应该GET返回相同的状态码吗?更具体地说,我们遇到了这样一种情况,200当我们执行 a 时,客户网站返回 a HEAD,但在执行 a303时返回 a GET。它与基于位置重定向到特定语言的页面有关,但不应该HEAD也要求您重定向吗?

4

1 回答 1

5

但是 HEAD 不应该也要求您重定向吗?

关键是这个词SHOULD。来自HTTP 方法规范,RFC2616

9.4 头部

HEAD 方法与 GET 相同,只是服务器MUST NOT在响应中返回消息体。响应 HEAD 请求的 HTTP 标头中包含的元SHOULD信息与响应 GET 请求而发送的信息相同。

这个词在RFC2119SHOULD中有进一步的定义:

SHOULD这个词,或形容词“推荐”,意味着在特定情况下可能存在忽略特定项目的正当理由,但在选择不同的课程之前,必须理解并仔细权衡全部含义。

因此,您描述的情况是合法的,但不推荐。您可能想向站点维护者询问此路径的原因。

于 2013-03-18T13:20:13.227 回答