如何测试 robots.txt 是不是在 localhost 的本地 Web 服务器中工作?

Posted

技术标签:

【中文标题】如何测试 robots.txt 是不是在 localhost 的本地 Web 服务器中工作?【英文标题】:how to test if robots.txt works in a local web server on localhost?如何测试 robots.txt 是否在 localhost 的本地 Web 服务器中工作? 【发布时间】:2017-10-02 21:34:21 【问题描述】:

我将 robots.txt 文件添加到本地 Web 服务器的根目录。

服务器上robots.txt文件的url是http://localhost/myserver/robots.txt

robots.txt文件的内容是

User-agent: *
Disallow: /

如何验证 robots.txt 文件是否适用于本地网络服务器?

我需要在本地安装一些网络爬虫或搜索引擎并运行它来验证吗?

谢谢。

【问题讨论】:

您在本地运行爬虫?或者这是否适用于某个将在网络上发布的网站,并且您想现在测试 robots.txt(即,一旦网站上线,它是否会按预期工作)? 我想在开发环境中进行测试,但还没有在生产环境中进行测试。 【参考方案1】:

如何验证 robots.txt 文件是否适用于本地网络服务器?

据我所知,robots.txt 文件不会阻止抓取工具抓取您的网站。它只是坚持不这样做。这意味着您无法验证这些作品是否不是。

相反,您可以并且应该验证的是爬虫在访问您的网站时能够读取您的robots.txt。您可以通过遵循约定来确保这一点。

这意味着您的robots.txt 文件应该存在于根路径下。 如果您打算在xyz 域下托管您的网站,那么http://xyz/robots.txt 应该是位置。

更多信息,请查看this。

如果您的网站已经上线,您可以使用任何在线工具来验证 robots.txt 是否可以访问。一种这样的工具是this。

【讨论】:

我不明白这是如何被赞成的。问题是如何测试 robots.txt 文件是否在本地工作,本地是关键字。在线检查员将无法访问本地 Web 服务器,因此这不是一个可行的解决方案。 robots.txt 并不总是可行的方法,例如对于 Wordpress,您应该添加一个过滤器来创建您的 robots.txt 规则,而不是根目录下的静态文件。

以上是关于如何测试 robots.txt 是不是在 localhost 的本地 Web 服务器中工作?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用robots禁止各大搜索引擎爬虫爬取网站

Nginx 块 robots.txt 文件

robots.txt 文件是什么? 如何获取

如何将 robots.txt 与 gitlab 和 apache + 子域一起使用?

如何使用 React 和 Firebase 托管在 SPA 上提供 robots.txt?

如何在 robots.txt Disallow 指令中转义 $?