SEO操作篇 百度优化建议的FAILED - (未设置max-age或expires)

[复制链接]
ARCHY明星会员实名认证 发表于 2014-2-25 21:04:37 [SEO操作篇] 显示全部楼层 |阅读模式 上一主题 下一主题
ad广告
ad广告

马上注册,一起探讨正确快速的建站方法

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
expires属性指定了coolie的生存期,默认情况下coolie是暂时存在的,他们存储的值只在浏览器会话期间存在,当用户推出浏览器后这些值也会丢失,如果想让cookie存在一段时间,就要为expires属性设置为未来的一个过期日期。现在已经被max-age属性所取代,max-age用秒来设置cookie的生存期。

Squid和Apache中的max-age与Expires的分别

max-age是HTTP/1.1中,他是指我们的web中的文件被用户访问(请求)后的存活时间,是个相对的值,相对Request_time(请求时间).
例如:A.html  用户请求时间是18:00,max-age设置的是600的话,相当18:00+600秒过期,也就是相对18:00的时间后面600秒后过期.默认的max-age是由Expires算出来的。

Expires是HTTP/1.0中的,它比max-age要麻烦点.Expires指定的时间分下面二种,这个主要考虑到apache中设置是A还是M。

1、相对文件的最后访问时间(Atime)
当Apache使用A时间来做Expires时.这样设置时.他就和max-age的值相等,因为max-age是相对文件的请求时间(Atime).

例如:ExpiresByType text/html A600

由上面我们得知,Apache设置Atime时,过期为600秒时.
Expires=18:00+600=18:10
max-age=18:00+600=18:10
得出:Expires=max-age

2、绝对修改时间(MTime)
这又分二种情况,我们来拿A.htm来讲
假设文件的建立时间为18:00。

当用户Request请求为18:00时,过期为600秒
Expires=18:00+600=18:10
max-age=18:00+600=18:10
得出:Expires等于max-age

当用户Request请求为18:20时,过期为600秒

Expires=18:00+600=18:10(因为设置成Mtime时,时间由文件建立时间来决定)
max-age=18:20+600=18:30
得出:Expires不等于max-age

另外要注意,象上面这种清况时,max-age优化,所以过期时间为18:30。

在squid,如果没有指明expires和max-age这二个的截止时间,那它就会使用发式截止时间,如参考 Last-Modified。
其实上面的max-age=18:20+600=18:30,这样算max-age不对,真实环境要这样算,max-age过期为http头中的Age=600过期。
注:Age域值是缓存服务器估计从响应产生或被原始服务器重新证实以来的总时间.age的值是缓存服务器算出来的,原始服务器是没有的。

apache 设置expires和max-age缓存

对于同一个操作对象,ExpiresByType比ExpiresDefault优先级高.当expires和max-age同时存在时,max-age的优先级会高于expires.
当你不知道某个文件的MIME类型时,你可以通过浏览器去看httpwatch去看MIME类型.
如果要对某个目录里的某个文件设置Expires头,可以用<filesmatch "正则"></filematch>来匹配.
设置缓存也可以通过mod_headers模块修改cache-control来实现.
header set cache-control "max-age="3600".
mod_expires 实例:
<Directory /opt>
  ExpiresActive On
  ExpiresDefault "accesss plus 3600 seconds"   如果是1秒,后面也是seconds
  ExpiresByType application/octet-stream "accesss plus 1 months"  这是对特殊文件类型bin缓存1个月
  <FilesMatch ^data.swf$> 针对opt目录下data.swf设置Expire值
   ExpiresActive On
   ExpiresDefault "accesss plus 60 seconds"
  </FilesMatch>
</Directory>
mod_headers实例
<Directory /opt>
  header set cache-control "max-age=3600"
  <FilesMatch ^data.swf$>
  header set cache-control "max-age=60"
  </FilesMatch>
</Directory>

在深入的待研究,目前对缓存的一些概念还不是太深入,如果有更深入更具体的方法在和大家分享。
参与人数 2元宝 +2 帮币 +5 收起 理由
Q1520229810 + 3 我会win主机的,QQ652269512
霍岑波罗斯 + 2 + 2 赞, 内部细节优化拼的就是技术!

查看全部评分总评分 : 元宝 +2 帮币 +5





上一篇:百度网页搜索结果页机制即将进行优化升级
下一篇:“网站的重要目录对百度进行了封禁”原因分析

大神点评10

Melody 发表于 2014-2-27 10:55:02 [SEO操作篇] 显示全部楼层
必须支持下lz... 这个可以有.
v4521 发表于 2014-4-5 10:26:54 [SEO操作篇] 显示全部楼层
文章不错,有一定吸引力。
qweqwequ1 发表于 2014-9-11 10:38:43 [SEO操作篇] 显示全部楼层
写的不错
shen1lian 发表于 2014-9-21 17:25:06 [SEO操作篇] 显示全部楼层
文章不错,有一定吸引力。
695876974 发表于 2014-11-14 13:20:02 [SEO操作篇] 显示全部楼层
真心学习了很有用
Q1520229810 发表于 2014-12-24 02:32:37 [SEO操作篇] 显示全部楼层
本帖最后由 Q1520229810 于 2014-12-24 02:33 编辑

我会啊,联系我QQ652269512,只帮修改iis6.0windows的主机哦,其他类型的百度有答案。
永不拋棄 发表于 2014-12-25 21:48:24 [SEO操作篇] 显示全部楼层
学习了,非常好的文章!!!!!
360系统之家www.360xt.cn
a0732w 发表于 2015-10-12 13:04:43 [SEO操作篇] 显示全部楼层
找到了
风吹叶儿落 发表于 2015-10-14 21:12:59 [SEO操作篇] 显示全部楼层
我的也出现这样的情况
东莞http://hao158.net/上海http://021snw.net/蒲友论坛http://puyouluntan.com/
淘小淘 发表于 2019-5-27 15:14:46 [SEO操作篇] 显示全部楼层
我只是路过站帮网打酱油的,顺便支持下
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

快速回复 返回顶部 返回列表