web-crawler - 我应该对robots.txt中不区分大小写的目录使用不同的大小写拼写吗?

标签 web-crawler robots.txt case-sensitive

不幸的是,我有不区分大小写的服务器,短期内无法更换。有些目录需要从爬网中排除,因此我必须在Disallow中对其进行robots.txt编码。让我们以/Img/为例。如果我全部保留小写…

User-agent: *
Disallow: /img/

…它没有映射到实际的物理路径,并且/Img/指令未应用带有/IMG/Disallow的地址。抓取工具会将这些变化视为不同的路径。

看看Microsoft’s robots.txt很有趣。他们可能使用IIS服务器,并且SERP只是充满了不允许的地址-仅在其他情况下。

我该怎么办?陈述以下内容是否有效(且有效)?
User-agent: *
Disallow: /Img/
Disallow: /img/
Disallow: /IMG/

最佳答案

原始的robots.txt规范没有说明文件路径中的类型大小写,但根据Google's robots.txt specification所述,文件路径绝对区分大小写。 Google明确指出“Disallow:/img/”仅阻止“/img/”,而不阻止“/Img/”或“/IMG/”。您的解决方案绝对有效,并且可以解决问题。

话虽如此,如果我有理由相信替代情况的URL实际上正在被爬网,并且它们引起了问题,我只会求助于此解决方案。否则,您可以轻松地将robots.txt文件变成无法维护的困惑。

关于web-crawler - 我应该对robots.txt中不区分大小写的目录使用不同的大小写拼写吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22012638/

相关文章:

c# - ASP.NET 路由 - 带数据库查找的路由约束

rest - 查找 API 端点的方法

php - 如何制作私有(private)网址?

bots - 使图像只能由 Googlebot-Image 访问,并通过 robots.txt 阻止其他机器人

Java套接字读取无限阻塞

mysql - 如何更改排序规则以使mysql不区分大小写

ruby-on-rails - ActionView::MissingTemplate:缺少模板主页/索引 - Google 抓取工具

php - 如何从.html 页面中提取链接和标题?

python - 使用 Scrapy 爬取带有 JavaScript 的站点

mysql - 如何在 MySQL 的 instr() 中使用区分大小写?