What is a good robots.txt?

时间:2010-12-13 作者:Steven

什么是“最佳”设置robots.txt?
我正在使用以下permalink结构/%category%/%postname%/.

我的robots.txt 目前看起来像这样(从很久以前的某个地方复制):

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback
Disallow: /comments
Disallow: /category/*/*
Disallow: */trackback
Disallow: */comments
<我希望我的评论被编入索引。因此,我可以删除此内容,因为我的永久链接结构,我是否要禁止索引类别您能在这里更改其他内容吗?

6 个回复
最合适的回答,由SO网友:Denis de Bernardy 整理而成

FWIW、trackback URL发出重定向,并且没有内容,因此它们不会被索引。

冒着无法回答问题的风险,请重新回答您的第2点和第3点:

http://googlewebmastercentral.blogspot.com/2008/09/demystifying-duplicate-content-penalty.html

换句话说,我认为你在浪费时间担心dup内容和你的机器人。txt应限于:

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-content/cache

SO网友:cybmeta

自从这个问题和答案发布以来,已经有很多时间了。从那时起,情况发生了很大变化。关于禁止爬虫访问的典型建议wp-content/themes, wp-content/plugins, wp-content/cache, wp-includes, 而任何其他包含网站所需CSS或js文件的目录都不再有效。

例如,让我们来谈谈谷歌。Googlebot正在呈现没有CSS和js的网站,但实际上并没有。实际上,Googlebot会提供完整的文档,并检查脚本的响应性、数量、位置和大小等。因此,如果您不允许Googlebot访问CSS和js文件,Google不会喜欢。这意味着你不应该拒绝wp-content/themes, wp-content/plugins, wp-content/cachewp-includes 因为所有这些文件夹都可以提供CSS和js文件。

在我看来,实际上是最好的机器人。txt文件是默认情况下由WordPress创建的文件(the bellow robots.txt is the default since WP 4.0):

User-agent: *
Disallow: /wp-admin/
如果您有cgi bin文件夹,最好不要使用cgi bin文件夹:

User-agent: *
Disallow: /wp-admin/
Disallow: /cgi-bin/
如果您使用站点地图,最好在robots中包含站点地图引用。txt(您仍然需要手动将站点地图提交给Google和Bing站长工具,但该参考对其他爬虫有用):

User-agent: *
Disallow: /wp-admin/
Disallow: /cgi-bin/

Sitemap: http://example.com/sitemap.xml
这是一般情况。特定网站可能需要禁止在每个特定情况下应研究的其他文件夹和文件。对于exmaple,您可能需要或希望不允许特定的插件文件夹:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-content/plugins/plugin-folder/
修改机器人。txt,使用robots_txt 过滤器(使用真实的robots.txt文件将使WordPress无法再处理robots.txt)。例如:

add_filter( \'robots_txt\', function( $output ) {

    $output .= "Disallow: /cgi-bin/\\n";
    $output .= "Disallow: /wp-content/plugins/plugin-folder-i-want-to-block/\\n";
    $output .= "\\nSitemap: " . site_url( \'sitemap.xml\' ) . "\\n";

    return $output;

});

SO网友:ZaMoose

你看过Yoast的吗WordPress SEO plugin? 它肯定能对付机器人。txt问题。

SO网友:Cardin

在一点帮助下,这是我的(显然与其他人没有太大不同)

User-agent: *
    Allow: /

Disallow: /wp-content/
    Disallow: /wp-admin/
    Disallow: /cat/
    Disallow: /key/
    Disallow: /*?
    Disallow: /*.js$
    Disallow: /*.inc$
    Disallow: /*.css$
    Disallow: /cgi-bin
    Disallow: /wp-admin
    Disallow: /wp-includes
    Disallow: /wp-content/plugins
    Disallow: /wp-content/cache
    Disallow: /wp-content/themes

User-agent: Mediapartners-Google
    Allow: /

User-agent: Adsbot-Google
    Allow: /

User-agent: Googlebot-Image
    Allow: /

User-agent: Googlebot-Mobile
    Allow: /

#User-agent: ia_archiver-web.archive.org
    #Disallow: /

Sitemap: YOURSITENAME.HERE

SO网友:Dan Knauss

你应该遵循Joost de Valk\'s current approach 几乎没有什么阻碍robots.txt, 但也要了解,每个网站都有一个独特的适当政策,需要随着时间的推移进行审查和更改。

这里之前给出的许多答案都是过时的,并且会导致搜索引擎优化自我破坏,因为谷歌现在检查“移动友好性”。今天,googlebots尝试加载普通浏览器所做的一切,包括字体、图像、JavaScript和CSS资产,来自/wp内容、/主题、/插件等(Morten Rand Hendriksenrecently blogged about this.)

你可以用Google\'s "mobile friendly" site checker 看看你的robots.txt 文件正在破坏您的网站。如果您使用谷歌网站管理员工具,如果出现大问题,您应该会收到警报和电子邮件通知。

除非您小心确保没有从不允许的文件夹中加载任何关键的演示或交互资产,否则这可能是WordPress每次安装都安全的最低要求:

User-agent: *
Disallow: /wp-admin
不要忘记添加网站地图:

Sitemap: http://yoursite.com/sitemap.xml
不幸的是,今天这种更加开放的政策重新产生了其他问题的可能性,这些问题以前导致人们对robots.txt, 例如[插件和主题开发人员包括可索引页面,链接回他们自己的网站]。4 除非您能够仔细研究所有第三方代码,并移动或删除您不想被索引的内容,否则对此没有任何办法。

SO网友:Tech Joe

仅供参考,ALWYAS从一个数字开始你的永久链接。根据经验,它可以加快页面的速度,因为WordPress可以快速区分页面和帖子(我也在其他地方读到过,然后尝试了它……这是真的)。所以http:example.com/%month%/%post%...会没事的

我只是想复制我所拥有的。对此进行了大量研究。这可能太过分了!它确实有助于谷歌识别你网站的主要关键词,如谷歌网站管理员工具所示。希望有帮助

User-agent: *
Allow: /
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /cgi-bin/
Sitemap: Url to sitemap1
Sitemap: Url to sitemap2

User-agent: Googlebot
# disallow all files ending with these extensions
Disallow: /*.js$
Disallow: /*.inc$
Disallow: /*.css$
Disallow: /*.cgi$
Disallow: /*.wmv$
Disallow: /*.ico$
Disallow: /*.opml$
Disallow: /*.shtml$
Disallow: /*.jpg$
Disallow: /*.cgi$
Disallow: /*.xhtml$
Disallow: /wp-*
Allow: /wp-content/uploads/ 

# allow google image bot to search all images
User-agent: Googlebot-Image
Allow: /*

User-agent:  *
Disallow: /about/
Disallow: /contact-us/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-

# disallow archiving site
User-agent: ia_archiver
Disallow: /

# disable duggmirror
User-agent: duggmirror
Disallow: /

User-agent: Googlebot
Disallow: /*.js$
Disallow: /*.inc$
Disallow: /*.css$
Disallow: /*.wmv$
Disallow: /*.cgi$
Disallow: /*.xhtml$

# Google AdSense
User-agent: Mediapartners-Google*
Disallow:
Allow: /*

结束

相关推荐

WordPress删除wp_List_Categories中最后一项的分隔符

我正在尝试删除最后一个分隔符(通常是<br/> 标记,但我将其从wp\\u list\\u categories的最后一个链接更改为“/”)。基本上我想要这个:类别1//类别2//类别3//看起来像这样:类别1//类别2//类别3以下是我当前使用的代码:<?php $cat_array = array(); $args = array( \'author\' => get_the_author_meta(\'id\'),&#x