要知道WordPress robots.txt文件中的“Disallow”命令与页面头部的元描述noindex
的作用不完全相同。您的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/
Host
&Crawl-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:规则用于设定网站的地图地址。