2011-09-30 171 views

回答

14

要知道,有没有真正的官方标准,任何网络爬虫可以愉快地忽略你的robots.txt

a Google groups post,以下的作品至少有Googlebot的;

User-agent: Googlebot 
Disallow: /directory/ 
Allow: /directory/subdirectory/ 
+2

我想动态地允许子目录,但不是第一级,将允许语句改为“允许:/目录/ * /'的作品。 – Duncanmoo

+2

根据robots.txt维基百科条目,'允许'指令应放在'不允许'之前,以达到最大兼容性(尽管Google或Bing都不介意) – pelms

2

如果这些都是真正的目录,那么接受的答案可能是您最好的选择。但是,如果您正在编写应用程序并且目录是动态生成的路径(例如上下文,路由等),那么您可能想要使用元标记而不是在robots.txt中定义它。这为您提供了无需担心不同浏览器如何解释/优先访问子目录路径的优势。

你可以尝试这样的事情代码:

if is_parent_directory_path 
    <meta name="robots" content="noindex, nofollow"> 
end 
1

我会建议使用谷歌的机器人测试仪。利用谷歌网站管理员工具 - https://support.google.com/webmasters/answer/6062598?hl=en

您可以在工具中编辑和测试URL,并且您还可以获得大量其他工具。

+0

好点!我不确定这是否在2011年发布后可用,但它是WMT非常有用的补充。 – QFDev

+0

QFDEV我今天不得不使用机器人测试仪,因为我努力让Google公司的网站在Google的搜索结果中排名更高。我在“HTML改进”中看到的唯一的东西是重复的标题和元标记。这是因为他们正在读取两次相同的页面(查询字符串)。同样出于某种原因,机器人正在爬取不存在的目录。我找到了你的帖子,它帮助并注意到Google Web Master工具中的测试人员,并发现它会验证这些更改。认为它可以通过张贴到你的线程来帮助其他开发者。 – Moojjoo

相关问题