HTTP 304状态码的详细讲解

发布于2022-01-12 23:38:31
1个回答
admin
网友回答2022-01-12

304(未修改):自从上次请求后,请求的网页未修改过。服务器返回此响应时,不会返回网页内容。如果网页自请求者上次请求后再也没有更改过,您应将服务器配置为返回此响应(称为 If-Modified-Since HTTP 标头)。服务器可以告诉 Googlebot 自从上次抓取后网页没有变更,进而节省带宽和开销。

因此304状态码或许不应该认为是一种错误,而是对客户端有缓存情况下服务端的一种响应。

整个请求响应过程如下:

客户端在请求一个文件的时候,发现自己缓存的文件有 Last Modified ,那么在请求中会包含 If Modified Since ,这个时间就是缓存文件的 Last Modified 。因此,如果请求中包含 If Modified Since,就说明已经有缓存在客户端。服务端只要判断这个时间和当前请求的文件的修改时间就可以确定是返回 304 还是 200(成功) 。

HTTP 304状态码的详细讲解

回到
顶部