Categories


Tags


ETag助力站点提交Sitemap——ETag简介与作用

一、ETag简介

ETag(EntityTags)是URL的tag,用来标示URL对象是否改变,这样可利用客户端(例如浏览器)的缓存。由服务器首先产生ETag,客户端通过将该记号传回服务器要求服务器验证其(客户端)缓存。服务器使用它来判断页面是否已经被修改,如果未修改返回304,而不必重新传输整个对象。

二、现在站点Sitemap存在的问题

1.发现更新不及时

当站点或其Sitemap发生更新时,百度难以及时发现并响应,因为百度难以无时无刻地持续检查站点内容和Sitemap是否更新。

2.全量抓取,消耗带宽

现在百度对站点Sitemap的抓取会将Sitemap文件完整下载下来,鉴于Sitemap文件一般较大,而这种下载可能存在多次,故比较消耗网站的流量和带宽。

三、ETag作用

HTTP1.1用ag来判断请求的文件是否被修改,主要为了解决Last-Modified无法解决的一些问题

1、一些文件也许会周期性的更改,但是他的内容并不改变(仅仅改变的修改时间),这个时候并不希望客户端认为这个文件被修改了重新GET;

2、某些文件修改非常频繁, 1秒内修改了N次,If-Modified-Since能检查到的粒度是秒级的,这种修改无法判断

3、某些服务器不能精确的得到文件的最后修改时间;

为此,HTTP1.1引入了ETag.但标准并没有规定ETag的内容是什么或者说要怎么实现,唯一规定的是ETag需要放在双引号内。ETag由服务器端生成,客户端通过If-Match或者说If-None-Match这个条件判断请求来验证资源是否修改。我们常见的是使用If-None-Match.请求一个文件的流程可能如下:

第一次请求:

1.客户端发起HTTP GET请求一个文件;

2.服务器处理请求,返回文件内容和一堆Header,当然包括ETag(例如"1ec5-502264e2ae4c0")(假设服务器支持ETag生成和已经开启了ETag).状态码200,如下图所示,首次请求百度首页时,成功得到百度logo图片文件bd_logo1.png,状态码200,大小8.1KB,返回的Header中包括ETag(“1ec5-502264e2ae4c0”)。

第二次请求:

1.客户端发起HTTP GET请求一个文件,这个时候客户端同时发送一个If-None-Match头,这个头的内容就是我们第一次请求时服务器返回的ETag:1ec5-502264e2ae4c0

2.服务器判断发送过来的ETag和计算出来的ETag是匹配的,不返回200,返回304,让客户端继续使用本地缓存。如图所示这次对bd_logo1.png的请求,服务器只返回了Header没有返回内容,大小仅为349B。

四、站点启用ETag的好处

1.对Sitemap启用ETag后,百度可以更快速地响应Sitemap的更新,没有更改内容的情况下,服务器只发回304应答头,对流量的消耗极小,在每个head平均227B大小的通常情形下,一整天二十四小时每秒都回应的流量消耗仅为18.7M。

2.现在站长平台对每个站点的Sitemap主动抓取次数设有上限,且这项功能没有对所有站开放,如果您的站点Sitemap启用了ETag,并通过了测试,那么就可以用很小的流量享受百度及时更新您的Sitemap的功能,以便于百度更好地收录您网站的内容。

如果大家对ETag还有任何的疑问可以到站长社区[站长工具]ETag助力Sitemap讨论帖中进行讨论。

来源:百度搜索资源平台 百度搜索学堂


Public @ 2021-07-08 16:09:45

导航结构如何优化?

导航结构的作用:网站号航主题是引导用户访间指定的网站菜单、栏目、内容等。一个合理的网站导购也是权重互传的重要途径。导航结构越清晰,越有利于用户在短时间内找到自己喜欢的内容。导航结构有如下三方面的作用:1、引导用户访问指定页面。其中全局导航、分类导航、辅助导航都是出于此目的进行的。2、理清网站各内容与链接间的联系。即对网站整理内容的一个索引和理解,这个最常见的应用就是网站地图和内容索引表,展现了整个

Public @ 2017-07-20 16:11:44

robot.txt在SEO中的作用

鉴于网络安全与隐私的考虑,搜索引擎遵循robots.txt协议。通过根目录中创建的纯文本文件robots.txt,网站可以声明不想被robots访问的部分。每个网站都可以自主控制网站是否愿意被搜索引擎收录,或者指定搜索引擎只收录指定的内容。当一个搜索引擎的爬虫访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果该文件不存在,那么爬虫就沿着链接抓取,如果存在,爬虫就会按照该文

Public @ 2023-01-27 16:09:31

什么是ETag?ETag作用有哪些

ETag是HTTP协议提供的一种用于判断资源是否发生变化的机制。ETag是一个字符串,由服务器生成,在资源被更新时会发生变化。客户端请求资源时,服务器会将资源的ETag值一起返回,客户端可以缓存资源,并记录ETag值。当客户端再次请求该资源时,会将上次记录的ETag值一同发送给服务器。如果此时服务器返回的ETag值与客户端记录的值相同,就说明资源没有变化,客户端可以直接使用缓存的资源,减少网络请求

Public @ 2023-03-25 23:50:19

更多您感兴趣的搜索

0.536050s