zoukankan      html  css  js  c++  java
  • Wordpress SEO robots

    robots.txt 是放置于域名根目录的一个文本文件,其作用是"声明站内规则",即告诉搜索引擎一个站点中哪些内容它可以抓取,而哪些不能。站长通过向 robots.txt 写入规则来和搜索引擎"沟通",以此保证站点的内容能够按照自己的意愿出现在搜索引擎当中(百度只部分遵守)。

    搜索引擎爬虫开始抓取一个网站,它们首先做的事情便是读取这个网站的 robots.txt。

    根据 Wordpress 的特性,SEO 必须从 robots.txt 做起。Wordpress SEO 权重调节篇已经阐明了单篇文章的重要性,本篇 robots.txt 和 meta robots 则是我们调整 Wordpress 内部权重的重要工具。

    先来看看我的 robots.txt 文件内的规则:

    User-agent: *
    Disallow: /index.php
    Disallow: /wp-
    Disallow: /*/feed
    Disallow: /*/*/feed
    Disallow: /*/*/trackback
    Disallow: /wap
    Disallow: /page
    Sitemap: http://ishawn.net/sitemap.xml

    我逐条分析并解释原因。

    1. User-agent 即搜索引擎的爬虫,以星号(*)匹配,表明之后的规则通用于所有搜索引擎。如果需要针对单独的搜索引擎制定规则,则需要写出该搜索引擎爬虫的具体名称,例如 Baiduspider 。

    2. 一定有人会奇怪为什么我要禁止爬虫抓取 index.php 。Disallow,意为不允许。当我发现搜索引擎并不那么聪明之后,我加入了这条规则。对搜索引擎来说,ishawn.net/ 是首页,而 ishawn.net/index.php 是"另一个"首页。搜索引擎一不小心发现 index.php 的存在,给抓进去了,最后的结果是:ishawn.net 有两个 meta description 页面描述完全相同的页面。首页就这么不明不白地被另一个自己分散了权重。

    3. 不允许抓取 /wp- 。这是一个省略的写法,完整的意思是不允许抓取域名根目录下所有以 "wp-" 开头的文件和文件夹。名称为 "wp-" 的文件夹在我这里都是 Wordpress 的系统文件,给搜索引擎抓了去对大家都没好处。

    4. 不允许抓取 /*/feed 。ishawn.net/comments/feed 和 ishawn.net/comment/feed 都是我不希望被搜索引擎抓取到的,它们对搜索引擎和我来说都没有意义。为了简化写法,我用了通配符。反正我这里除了 /tag/feed 之外没有第四个可以被匹配到的路径了。前三个我本来就不希望它们被搜索引擎抓取。

    5. 不允许抓取 /*/*/feed 。ishawn.net 的永久链接结构为 /分类名称/单篇文章,这个规则匹配的便是 /分类名称/单篇文章/feed,意为不允许搜索引擎抓取单篇文章的评论 feed。

    6. 不允许抓取 /*/*/trackback 。理由同上,不允许抓取单篇文章的 trackback 地址。

    7. 不允许抓取 /wap 。我安装了 wp-t-wap 插件,生成的 wap 页面都包含在里面,还是出于不被分散权重的理由,禁止。

    8. 不允许抓取 /page 。举例来说,ishawn.net/page/2 是首页的"第二页",它同样和首页的 meta description 相同,所以禁止理由也和第2条相同,我就不罗嗦了。需要注意的是写法,你也可以写成 Disallow: /page/* ,它们的意思都是一样的。

    9. 声明 sitemap 所在地。其实这并不是一个必须的条目,不过写上可以让搜索引擎对 sitemap.xml 的读取更频繁一些。

    需要注意的是,robots.txt 不通用,直接拿我的 robots.txt 内容放在你那里很可能起反作用。我看到有些博友无私地将自己的 robots.txt 分享出来让别人 copy,这种举动很愚昧。就像每个 blog 有不同的永久链接形式一样,你必须根据自己的实际情况来定制 robots.txt。之所以要逐条解释我的 robots.txt,也是出于这方面的考虑。

    robots.txt 也不要写得太复杂。由于存在通配符,条目越多,交叉领域也越多,把爬虫搞糊涂对你的站点没有好处。这里有一个 Google 官方的 robots.txt 定制指南,详细解释了各种通配符的用法,有兴趣的朋友可以参考一下。

    当然,要达到 "固定页面数量+单篇文章数量+首页" 的结果,仅依靠 robots.txt 是不够的。我们还需借助 meta robots 的帮助。

    meta robots 是写在页面内的,具有更多可操作性的 "robots.txt" 。"ishawn.net/年份/月份" 是我这里按月存档的路径,我不想搜索引擎抓取它们,原本可以在 robots.txt 里面写 Disallow: /200* ,但这样的损失很大。要知道,写在 robots.txt 里面的内容是完全禁止搜索引擎抓取的。一旦我彻底禁止了爬虫对存档页面的爬取,那我的内链就会损失很多。

    meta robots 更多可操作性的用处就在这里了。

    <meta content="noindex,follow" />

    当搜索引擎读取到页面上的这个标签,便不会收录该页面。但其仍然会跟踪页面内的所有链接,使内链关系继续维持。

    我们没有在页面内插入任何 meta robots 属性时, 爬虫对页面会以 "index,follow" 来对待,即收录且跟踪链接。如果有需求的话,我们也可以使用 "index,nofollow" —— 收录但不跟踪页内链接。meta robots 还有一个不常用的属性,noarchive 。该属性可以控制搜索引擎是否建立网页快照。

    通过 robots.txt 和 meta robots,我们完全可以控制好搜索引擎对 blog 的收录数量,发挥单篇文章的最大价值。SEO for Wordpress 的乐趣有很多,robots.txt 和 meta robots 便是其中之一。

    再次提醒,本文的例子不能通用,请一定根据自己的实际需求进行相应操作。

    转自:http://szuymr.blog.163.com/blog/static/502904532009314105612903/

  • 相关阅读:
    C#中async/await中的异常处理
    Xunit
    Markdown安装与简单使用
    .Net Ajax跨域请求总结
    centos 安装 Vmare tool
    linux安装Java
    linux常用命令整理
    autofac解析Mvc和Webapi的坑
    swarm on ubuntu
    deploy service on swarm
  • 原文地址:https://www.cnblogs.com/johnwonder/p/1940923.html
Copyright © 2011-2022 走看看