• 反搜索引擎


    最近同事在做搜索引擎,一时兴起,搞了一个反搜索,主要参考这个:

    限制Robot访问Web站点的方法

      

     
    Robot是帮助搜索引擎搜集网页的一种自动化程序,它在访问一个Web站点时,会跟随网页中的链接提取出站点上的大部分内容,并为这些网页建立索引,放在搜索引擎的数据库中。在一些情况下,Web管理员或网页的作者出于某种原因的考虑可能并不想让Robot提取站点上的某些内容,此时可以使用一些方法来限制Robot的访问范围。

      限制Robot访问Web站点的方法共有两种,一种是由站点的Web管理员使用的Robot限制协议,目前绝大部分Robot都遵守该协议,另一种是由网页作者使用的Robot META标记,目前只有一小部分Robot支持该标记。


      Robot限制协议


      Robot限制协议的关键是在Web站点的根目录下放置一个文本文件Robot.txt。Robot在访问一个站点时会首先去读取该文件,分析其中的内容,并按照Web管理员的规定不去访问某些文件。下面是Robot.txt的一个例子:

      # http://www.yoursite.com/robots.txt

      User-agent: 

      Disallow: /tmp/ # these files will soon be deleted

      Disallow: /test.html

      User-agent: InfoSeek Robot 1.0

       Disallow: /

      其中"#"后面的内容是注释,User-agent命令用于指定它下面的Disallow命令对何种Robot有效,""表示对所有Robot都有效,上面例子中第二个User-agent命令表示其下面的Disallow命令只对Infoseek的1.0版Robot有效。Disallow命令用于指定哪些目录或文件不能被访问,如果指定了"/",那么所有文件都不允许访问,Disallow命令在一行中只能放一个目录或一个文件,如果有多个目录,则必须分别放在几行中。

      上面的Robot.txt文件是目前还在使用的早期Robot限制协议规定的内容,现在还有一个关于如何限制Robot的Internet草案正在制定之中,它对早期Robot限制协议进行了很多扩充,但还未进入实用阶段。


      Robot META标记


      绝大多数情况下,网页作者并非Web管理员,如果网页作者不想让Robot访问自己编写的一些HTML文件,那么可以请Web管理员帮忙在Robot.txt中注明,或者使用Robot META标记。

      META标记是HTML文件中用来放置一些不可见信息的一种标记,它必须放在HTML文件的Head部分中。Robot META标记是一种特殊的META标记,下面是它的几个例子:

      〈meta name=″robots″ content=″index,follow″〉

      〈meta name=″robots″ content=″noindex,follow″〉

      〈meta name=″robots″ content=″index,nofollow″〉

      〈meta name=″robots″ content=″noindex,nofollow″〉

      Robot META标记的name部分为"robots",content部分可以是"index"、"noindex"、"follow"和"nofollow"的组合。"index"表示搜索引擎可以为该HTML文件建立索引,"follow"表示搜索引擎可以使用该HTML文件中的链接来访问其它文件,"noindex"和"nofollow"与"index"和"follow"的意义正好相反。在组合使用这几个命令时,不能出现逻辑矛盾,即不能同时指定"index"、"noindex",或"follow"、"nofollow"。另外,如果要指定"index,follow",可以使用"all"来代替,如果要指定"noindex"、"nofollow",可以使用"none"来代替。

      使用Robot META标记的缺点是比较麻烦,对每一个HTML文件都要进行修改,另外,很多Robot并不支持该标记。
     
     

  • 相关阅读:
    Microsoft Security Essentials
    android studio 引用远程仓库下载慢(JCenter下载慢)的办法
    Android studio Unable to start the daemon process
    Android studio 怎么使用已经下载好的Android SDK ?
    解决Unknown error: Unable to build: the file dx.jar was not loaded from the SDK folder!
    U3d中实现A*寻路,附源文件
    [运维-服务器 – 1A] – nginx.conf(转)
    unity客户端与c++服务器之间的简单通讯_1
    [Java Web – Maven – 1A]maven 3.3.3 for windows 配置(转)
    [Android-2A] -仿IOS微信滑动删除_SwipeListview左滑删除例子
  • 原文地址:https://www.cnblogs.com/babyblue/p/2399.html
Copyright © 2020-2023  润新知