如何编写和优化WordPress网站的Robots.txt

要知道WordPress robots.txt文件中的“Disallow”命令与页面头部的元描述noindex 的作用不完全相同。您的robots.txt会阻止抓取,但不一定不进行索引,网站文件(如图片和文档)除外。如果搜索引擎从其他地方链接,它们仍然可以索引您的“不允许爬取”的页面。

如何编写和优化WordPress网站的Robots.txt插图

因此,Prevent Direct Access Gold不再使用robots.txt禁止规则阻止您的网站页面进行搜索索引。相反,我们使用  noindex元标记,这也有助于谷歌和其他搜索引擎正确地在您的网站上为您的内容分发其入站链接值。

Yoast建议保持robots.txt干净  ,不要阻止包括以下任何内容:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-content/plugins/
Disallow: /wp-includes/

WordPress也同意说理想的robots.txt 不应该禁止任何东西。事实上,  /wp-content/plugins/ 和  /wp-includes/ 目录包含您的主题和插件可能用于正确显示您的网站的图像,JavaScript或CSS文件。阻止这些目录意味着插件和WordPress的所有脚本,样式和图像被阻止,这使得Google和其他搜索引擎的抓取工具难以分析和理解您的网站内容。同样,你也不应该阻止你/wp-content/themes/

简而言之,禁止你的WordPress资源,上传和插件目录,许多人声称可以增强你的网站的安全性,防止任何目标易受攻击的插件被利用,但实际上可能弊大于利,特别是在SEO方面。或者,您应该卸载这些不安全的插件更实际些。

这就是我们默认从robots.txt中删除这些规则的原因。但是,您可能仍希望将它们包含在WordPress的Robots.txt内。

建议包含Sitemap文件

尽管Yoast强烈建议您直接手动将XML站点地图提交到Google Search Console和Bing网站管理员工具,但您仍可将sitemap添加到robots.txt,帮助搜索引擎快速爬取收录你的网站页面。

Sitemap: http://yourdomain.com/post-sitemap.xml
Sitemap: http://yourdomain.com/page-sitemap.xml
Sitemap: http://yourdomain.com/author-sitemap.xml
Sitemap: http://yourdomain.com/offers-sitemap.xml

Robots.txt的其他规则

出于安全,建议您阻止您的WordPress的readme.html,licence.txt和wp-config-sample.php文件访问,以便未经授权的人员无法检查并查看您正在使用的WordPress版本。

User-agent: *
Disallow: /readme.html
Disallow: /licence.txt
Disallow: /wp-config-sample.php

您还可以使用robots.txt对不同的搜索引擎爬虫定制不同的爬取规则,如下示例。

# block Googlebot from crawling the entire website
User-agent: Googlebot
Disallow: /

# block Bingbot from crawling refer directory
User-agent: Bingbot
Disallow: /refer/

这是如何阻止蜘蛛抓取WordPress搜索结果,强烈建议加入此规则:

User-agent: *
Disallow: /?s=
Disallow: /search/

HostCrawl-delay 是您可能考虑使用的其他robots.txt指令,尽管不太受欢迎。第一个指令允许您指定网站的首选域(www或非www):

User-agent: *
#we prefer non-www domain
host: yourdomain.com

下面的规则是用来告诉搜索引擎蜘蛛在每次抓取之前等待几秒钟。

User-agent: *
#please wait for 8 seconds before the next crawl 
crawl-delay: 8

完整的robots.txt

综上所述,我们建议WordPress的robots.txt内容编写为:

User-agent: *
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-admin/
Disallow: /wp-login.php
Disallow: /readme.html 
Disallow: /licence.txt 
Disallow: /wp-config-sample.php
Disallow: /refer/
Disallow: /?s= 
Disallow: /search/

#we prefer non-www domain(填入你的网站域名首选域名,一般带www,请根据实际情况填写,部分搜索引擎不支持此规则,慎重添加)
host: yourdomain.com

#please wait for 8 seconds before the next crawl(填入你希望爬虫爬取页面的延迟秒数) 
crawl-delay: 8

Sitemap: http://yourdomain.com/post-sitemap.xml

温馨提示:上述完整的robots.txt仅供参考,请各位站长根据自己的实际情况编写内容,其中User-agent: *规则即对所有搜索引擎蜘蛛通用;Allow: 规则即允许爬取;Disallow: 规则即不允许爬取;host:规则用于指定网站首选域;crawl-delay:规则用于设定爬虫爬取时间间隔;Sitemap:规则用于设定网站的地图地址。

评论留言

唇枪舌剑 (7)

  • 云点的头像

    云点

    2021.6.11 12:06

    一般wp网站保持默认就足够用了
    User-agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php

    回复
  • 华风夏韵的头像

    华风夏韵

    2021.2.17 16:02

  • python爱好者换友链www.wpon.cn的头像

    python爱好者换友链www.wpon.cn

    2020.4.10 09:04

    老板,请问这样设置是否正确
    User-agent: *
    Allow: /wp-admin/admin-ajax.php
    Disallow: /wp-admin/
    Disallow: /wp-login.php
    Disallow: /readme.html
    Disallow: /licence.txt
    Disallow: /wp-config-sample.php
    Disallow: /refer/
    Disallow: /?s=
    Disallow: /search/
    #we prefer non-www wpon.cn
    host: http://www.wpon.cn
    #please wait for 8 seconds before the next crawl
    crawl-delay: 8
    Sitemap: https://www.wpon.cn/post-sitemap.xml

    回复
    • WBOLT_COM

      2020.4.10 17:04

      @python爱好者 最佳方式,去百度搜索资源平台检测一下即可。

  • 非礼勿言yelin的头像

    非礼勿言yelin

    2020.2.16 15:02

    谢谢开发了这么多不错的插件。安装了插件设置好之后网站根目录没有看到robots.txt文件,另外sitemap.xml也是404,请问需要怎么解决这个。

    回复
  • 奶爸的笔记的头像

    奶爸的笔记

    2019.6.5 19:06

    其实某seo插件官方的建议是不禁止索引任何文件。

    回复
    • WBOLT_COM

      2019.6.5 20:06

      @奶爸的笔记 说是这么说,但一些不需要被搜索引擎索引的,禁止就OK了,不然爬了也是白爬。