如何设置仅允许站点默认页面的robot.txt

发布于 2024-07-04 22:14:03 字数 779 浏览 16 评论 0原文

假设我在 http://example.com 上有一个网站。 我真的很想让机器人看到主页,但任何其他页面都需要被阻止,因为它对蜘蛛来说毫无意义。 换句话说

http://example.com & 应该允许 http://example.com/,但是 http://example.com/anythinghttp://example.com/someendpoint.aspx 应该被阻止。

此外,如果我可以允许某些查询字符串传递到主页,那就太好了: http://example.com?okparam=true

但不是 http://example.com?anythingbutokparam=true

Say I have a site on http://example.com. I would really like allowing bots to see the home page, but any other page need to blocked as it is pointless to spider. In other words

http://example.com & http://example.com/ should be allowed, but
http://example.com/anything and http://example.com/someendpoint.aspx should be blocked.

Further it would be great if I can allow certain query strings to passthrough to the home page:
http://example.com?okparam=true

but not
http://example.com?anythingbutokparam=true

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

浅笑依然 2024-07-11 22:14:03

据我所知,并不是所有的爬虫都支持Allow标签。 一种可能的解决方案可能是将除主页之外的所有内容放入另一个文件夹并禁止该文件夹。

As far as I know, not all the crawlers support Allow tag. One possible solution might be putting everything except the home page into another folder and disallowing that folder.

救赎№ 2024-07-11 22:14:03

基本 robots.txt:

Disallow: /subdir/

我不认为您可以创建一个表达式来表示“除根目录之外的所有内容”,您必须填写所有子目录。

robots.txt 中也不可能存在查询字符串限制。 您必须在后台代码(处理部分)中执行此操作,或者可能使用服务器重写规则来执行此操作。

Basic robots.txt:

Disallow: /subdir/

I don't think that you can create an expression saying 'everything but the root', you have to fill in all sub directories.

The query string limitation is also not possible from robots.txt. You have to do it in the background code (the processing part), or maybe with server rewrite-rules.

哀由 2024-07-11 22:14:03
Disallow: *
Allow: index.ext

如果我没记错的话,第二个子句应该覆盖第一个子句。

Disallow: *
Allow: index.ext

If I remember correctly the second clause should override the first.

鹤仙姿 2024-07-11 22:14:03

Google 网站站长工具报告指出,禁止始终优先于允许,因此没有简单的方法可以在robots.txt 文件。

您可以通过在除主页之外的每个页面的 HTML 中放置 noindex,nofollow META 标记来实现此目的。

Google's Webmaster Tools report that disallow always takes precedence over allow, so there's no easy way of doing this in a robots.txt file.

You could accomplish this by puting a noindex,nofollow META tag in the HTML every page but the home page.

微凉徒眸意 2024-07-11 22:14:03

经过一番研究,我发现了一个主要搜索提供商可以接受的解决方案:谷歌雅虎< /a> & msn(我可以在这里找到一个验证器):

User-Agent: *
Disallow: /*
Allow: /?okparam=
Allow: /$

技巧是使用 $ 来标记 URL 的结尾。

So after some research, here is what I found - a solution acceptable by the major search providers: google , yahoo & msn (I could on find a validator here) :

User-Agent: *
Disallow: /*
Allow: /?okparam=
Allow: /$

The trick is using the $ to mark the end of URL.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文