seo应正确看待访问日志里的网页(304 200)返回码

2014年03月26日 15:21 by:老修

导读: 网站访问日志的可以帮我们到很多问题, seo检查百度等搜索引擎是否来抓取的重要工具就是查看log网站访问日志了, 访问日志里清楚的记录着每位"访客"的基本信息. seo应该正确看待访问日志里304返回码, 304返回码实际上缓存导致的.

网站访问日志的可以帮我们到很多问题, 比如不存在页面的返回的404错误代码, 网站能正常访问的则返回200代码, 301代码则表示永久性转移, 常用在网站改版和url重写后为规范url而做的转跳.  403返回码则是拒绝某些ip访问.  304代码表示网页未修改. 应该养成定时查看网站访问日志的好习惯

更多网页返回码请参考: 网页状态码意思查询表

为什么要看网站访问日志呢?

1. 网站访问日志可以帮我们发现网站的一些问题.

2. 发现并屏蔽一些不友好的访问. 比如用试图用嗨客软件扫描漏洞. 这时候我们就可以看到大量的404错误返回码. 这时候就可以屏蔽不友好的ip地址了.

3. seo查看搜索引擎蜘蛛访问情况. 对seo来说查看访问日志是最直接了解网站抓取情况的方法了.

seo 应该正确理解log访问日志里的返回码

对于访问日志里的(304) 返回码, 我似乎跟不上"大牛" 的节奏了, 不管是304还是301或者是200返回码就是服务器对请求页面的一个状态而已. 似乎曲解了百度蜘蛛, 百度蜘蛛只是来抓取, 并不对(服务器/网站)返回任何数据, 而服务器记录的只是这个ip的访问日志而已.

如果网站确实有了新内容网站仍返回304代码请检查服务器的缓存时间是否太长导致缓存更新不及时.

百度蜘蛛304返回码

实际上我建议一些php页也做适当的缓存, 缓存可以减轻服务器压力,为了搜索引擎能及时收录我们的文章可以把在发布文章时同步ping给百度等搜索引擎, sitemap文件就不做服务器端缓存了.

聊聊我理解的访问日志里的304返回码:

网页返回 304状态的意思是"未修改"; 这里未修改的意思是自从上次请求后原来缓冲的文档还可以继续使用。

网站/服务器为了减轻请求压力提升网站访问速度, 做了缓存设置, 当UA请求访问网页的时候这时候如果服务器缓存未更新, 就直接从缓存中读取网页, 同时返回304代码。 

如果服务器做了缓存且缓存在用户/搜索引擎第二次来访时并未更新, 那么这时候就会返回304代码。

网站log访问日志

这里要区分"本地缓存"和"服务器缓存", js/css/img文件一般在访问网页的时候都会在本地缓存的, 而php html等网页则通常是再次请求服务器由服务器判断服务器缓存是否有效返回给访客.

关于缓存和返回码我们可以用 HttpWatch 插件来查看比较直观, 请自行"度娘"安装.

测试老吧博客里的一篇文章的不同返回码:

1. 如果网站是第一次访问

强制刷新后网页的返回码

2.做了缓存后,  F5重新访问的结果:

刷新后的网页返回码

至于第一行为什么返回200, 这是因为动态页老修并没有做缓存的缘故.304返回码就是这样产生的.