zoukankan      html  css  js  c++  java
  • apache 返回的状态码304

    博客转载:http://baike.baidu.com/link?url=jhw62dpK66WD7EQFKWEhVQs_jPeFKIUegnA6

    如果客户端发送了一个带条件的GET 请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)并没有改变,则服务器应当返回这个304状态码。简单的表达就是:客户端已经执行了GET,但文件未变化。

    什么情况下会返回304状态码?

    客户端是怎么知道这些内容没有更新的呢?其实这并不是客户端的事情,而是你服务器的事情,大家都知道服务器可以设置缓存机制,这个功能是为了提高网站的访问速度,当你发出一个GET请求的时候服务器会从缓存中调用你要访问的内容,这个时候服务器就可以判断这个页面是不是更新过了,如果没有更新过那么他会给你返回一个304状态码。

    1.如何从网站日志中分析304状态码

    例如某网站日志中有以下这样的一段:

    2011-12-18 23:45:33 W3SVC7499849XX 61.145.116.XX GET /asyj/1112_5544.html - 80 - 123.125.71.78 Mozilla/5.0+(compatible;+Baiduspider/2.0;++http://***.baidu.coX/search/spider.html[1] ) 304 0 0

    其实这段文字是这样理解的。

    2011-12-18 23:45:33 ——代表访问的日期和时间。

    W3SVC7499849XX ——代表虚拟主机的名称

    61.145.116.XX ——代表访问ip

    GET ——代表访问的方法

    /asyj/1112_5544.html——代表具体访问的文件

    80 ——代表访问的端口

    123.125.71.78 ——代表来源ip

    Mozilla/5.0+(compatible;+Baiduspider/2.0;++http://***.baidu.coX/search/spider.html) ——代表访问来源;这里是代表百度蜘蛛。注*换为w

    304 ——304返回码。这个也是这里介绍的重点。这里表示客户端已经执行了GET,但文件未变化

    前一个0 ——代表服务端传送到客户端的字节大小

    后一个0 ——代表客户端传送到服务端的字节大小

    从这一段日志。我们可以看出这次百度蜘蛛访问的结果的返回了一个304状态码。那么搜索引擎就不会对我们的页面进行再次抓取了

    2.304状态码的意义所在

    一个网站被搜索引擎抓取的次数以及频率越多那么他是越有利于排名的,但是如果你的网站出现太多的304,那么一定会降低搜索引擎的抓取频率以及次数,从而让自己的网站排名比别人落一步

  • 相关阅读:
    《算法导论》第二章笔记
    Python实现websocket之Django Channel实时推送与聊天
    zabbix设置钉钉报警
    ESXi安装报错,No network adapters were detected...
    supervisor指南
    Flask入门到放弃(五)—— 蓝图
    Flask入门到放弃(四)—— 数据库
    Flask入门很轻松(三)—— 模板
    Flask入门很轻松 (二)
    Flask入门很轻松 (一)
  • 原文地址:https://www.cnblogs.com/the-study-of-linux/p/5226349.html
Copyright © 2011-2022 走看看