我们在使用百度统计中的SEO建议检查网站时,总是发现“静态页参数”一项被扣了18分,扣分原因是“在静态页面上使用动态参数,会造成spider多次和重复抓取”。一般来说静态页面上使用少量的动态参数的话并不会对spider的抓取造成什么影响,但要是一个网站静态页面上使用的动态参数过多,那么最后就有可能会造成spider多次和重复抓取了。

  要解决“在静态页面上使用动态参数,会造成spider多次和重复抓取”这一SEO问题,我们需要用到Robots.txt(机器人协议)来限制百度spider对网站页面的抓取,robots.txt是一个协议,而不是一个命令。robots.txt是搜索引擎中访问网站的时候要查看的第一个文件。robots.txt文件告诉蜘蛛程序在服务器上什么文件是可以被查看的。当一个搜索蜘蛛访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,所有的搜索蜘蛛将能够访问网站上所有没有被口令保护的页面。

  详解如何通过创建Robots.txt来解决网站被重复抓取,我们只需要设置一个语法。
      User-agent: Baiduspider(仅对百度蜘蛛有效)
  Disallow: /*?* (禁止访问网站中所有的动态页面)
  这样就可以防止动态页面被百度索引,避免出现网站被spider重复抓取了。有些人说:“我的网站是使用伪静态页面的,每个网址html前面都带有?怎么办?” 这种情况的话就使用另一个语法。
      User-agent: Baiduspider(仅对百度蜘蛛有效)
  allow: .htm$(仅允许访问以".htm"为后缀的URL)
  这样就可以让百度蜘蛛只收录你的静态页面,而不索引动态页。其实网站SEO知识还有很多,都需要我们一步一步的去摸索,通过实践去发现真理。注重用户体验的网站才是长久发展的基本点。

  禁止网站被搜索抓取的一些方法:

先在站点的根目录下新建一个robots.txt文本文件。当搜索蜘蛛访问这个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索蜘蛛就会先读取这个文件的内容:

文件写法
User-agent: * 这里的*代表的所有的搜索引擎种类,*是一个通配符,user-agent分号后需加空格。
Disallow: / 这里定义是禁止爬寻站点所有的内容
Disallow: /admin/ 这里定义是禁止爬寻admin目录下面的目录
Disallow: /ABC/ 这里定义是禁止爬寻ABC目录下面的目录
Disallow: /cgi-bin/*.htm 禁止访问/cgi-bin/目录下的所有以".htm"为后缀的URL(包含子目录)。
Disallow: /*?* 禁止访问网站中所有包含问号 (?) 的网址
Disallow: /.jpg$ 禁止抓取网页所有的.jpg格式的图片
Disallow:/ab/adc.html 禁止爬取ab文件夹下面的adc.html文件。
Allow: /cgi-bin/ 这里定义是允许爬寻cgi-bin目录下面的目录
Allow: /tmp 这里定义是允许爬寻tmp的整个目录
Allow: .htm$ 仅允许访问以".htm"为后缀的URL。
Allow: .gif$ 允许抓取网页和gif格式图片
Sitemap: 网站地图 告诉爬虫这个页面是网站地图
 
下面列出来的是比较出名的搜索引擎蜘蛛名称:
Google的蜘蛛: Googlebot
百度的蜘蛛:baiduspider
Yahoo的蜘蛛:Yahoo Slurp
MSN的蜘蛛:Msnbot
Altavista的蜘蛛:Scooter
Lycos的蜘蛛: Lycos_Spider_(T-Rex) 
Alltheweb的蜘蛛: FAST-WebCrawler/ 
INKTOMI的蜘蛛: Slurp
SOGOU的蜘蛛:Sogou web spider/4.0和Sogou inst spider/4.0

按照以上的说明,我们可以给大案一个示例,以Sogou的来说,禁止抓取的robots.txt代码写法如下:
User-agent: Sogou web spider/4.0
Disallow: /goods.php 
Disallow: /category.php

解决在静态页面上使用动态参数,造成spider多次和重复抓取的问题的更多相关文章

  1. 浅谈在静态页面上使用动态参数,会造成spider多次和重复抓取的解决方案

    原因: 早期由于搜索引擎蜘蛛的不完善,蜘蛛在爬行动态的url的时候很容易由于网站程序的不合理等原因造成蜘蛛迷路死循环. 所以蜘蛛为了避免之前现象就不读取动态的url,特别是带?的url 解决方案: 1 ...

  2. dedecms--将静态页面转化为动态页面

    最近在用dedecms二次开发项目,需要对文章内容页设置权限,会员未登录不允许查看,这个需要先在后台设置将静态页面转化为动态页面 具体步骤: 1:将主页设置为动态浏览 2:进入后台→系统→SQL命令行 ...

  3. 页面上有两个元素id相同,js中如何取值

    页面上有两个table,id都是”cont2",现要在js中取到这两个table,改变样式. js实现: var tab2=document.all.cont2(1);var  tab=do ...

  4. 关于线上JVM动态参数设置调优

    p.p1 { margin: 0; -webkit-hyphens: auto; font: 16px Arial; color: rgba(68, 68, 68, 1); -webkit-text- ...

  5. javaweb页面上展示动态图片

    HTML <img alt="点击设定" name="CONSTRUCTIONPLANHIS_IMAGE_curr_img_0" src="vi ...

  6. python解决自动化测试静态页面加载慢的情况

    # coding:utf8from selenium import webdriverimport time # 创建一个ChromeOptions的对象option = webdriver.Chro ...

  7. 浅谈php生成静态页面

    一.引 言 在速度上,静态页面要比动态页面的比方php快很多,这是毫无疑问的,但是由于静态页面的灵活性较差,如果不借助数据库或其他的设备保存相关信息的话,整体的管理上比较繁琐,比方修改编辑.比方阅读权 ...

  8. UGUI OnValueChanged 动态参数指定

    在选择方法的时候注意,选择最上面的动态参数的方法.

  9. 抓取Js动态生成数据且以滚动页面方式分页的网页

    代码也可以从我的开源项目HtmlExtractor中获取. 当我们在进行数据抓取的时候,如果目标网站是以Js的方式动态生成数据且以滚动页面的方式进行分页,那么我们该如何抓取呢? 如类似今日头条这样的网 ...

随机推荐

  1. ESLint具体规则设置

    "no-alert": 0,//禁止使用alert confirm prompt "no-array-constructor": 2,//禁止使用数组构造器 & ...

  2. Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图(转载)

    Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图 2017年04月05日 10:53:13 李学凯 阅读数:104997更多 所属专栏: Intellij Idea   ...

  3. Spring再接触 生命周期

    Userservice.java package com.bjsxt.service; import com.bjsxt.dao.UserDAO; import com.bjsxt.model.Use ...

  4. Filter过滤器 不登陆无法访问其他页面

    package com.cscy.Filter; import java.io.IOException; import javax.servlet.Filter; import javax.servl ...

  5. C语言数据结构_严蔚敏+吴伟民 课本源码

    http://www.cnblogs.com/kangjianwei101/category/791617.html

  6. Game Engine Architecture 6

    [Game Engine Architecture 6] 1.Data-Parallel Computations A GPU is a specialized coprocessor designe ...

  7. python 网络编程粘包解决方案2 + ftp上传 + socketserver

    一.struct 神奇的打包工具 struct 代码: import struct num = 156 #将int类型的数据打包成4个字节的数据 num_stru = struct.pack('i', ...

  8. [Solution] 969. Pancake Sorting

    Difficulty: Medium Problem Given an array A, we can perform a pancake flip: We choose some positive ...

  9. Trie树详解(转)

    特别声明 本文只是一篇笔记类的文章,所以不存在什么抄袭之类的. 以下为我研究时参考过的链接(有很多,这里我只列出我记得的): Trie(字典树)的应用——查找联系人 trie树 Trie树:应用于统计 ...

  10. linux下mycat自启动方法

    每次开机都要启动mycat,网上看了好多都是用shell脚本来实现mycat开机自启动,后来看到一种方法,直接修改系统文件来实现,已经实践过,方法有效. 1.修改脚本文件rc.local:vim /e ...