我可以阻止蜘蛛访问带有某些 GET 参数的页面吗?

发布于 2024-11-09 18:35:47 字数 328 浏览 0 评论 0原文

我们有一个页面可以选择将 ID 作为 GET 参数。如果提供的 ID 无效,页面会抛出错误并发出有人错误访问该页面的通知。火上浇油的是,ID 可能会暂时有效,然后就会过期。

我们遇到一个问题,搜索引擎机器人使用旧的、过期的 ID 访问页面。这意味着每次我们被蜘蛛抓取时,我们都会收到一堆“误报”警报。我希望有某种方法告诉机器人继续抓取页面,但不使用 GET 参数 - 只需索引无参数页面。使用 robots.txt 文件或类似的文件是否可以远程实现这一点?


注意:我知道解决此问题的最佳方法是更改​​页面的行为,事实上,这将在几周内发生。我只是暂时寻找解决方案。

We have a page that can optionally take an ID as a GET parameter. If an invalid ID is provided, the page throws an error and sends out a notification that someone's accessing the page incorrectly. Adding fuel to the fire is that IDs can be valid for a while, then expire.

We're having a problem where search engine bots are hitting the page with old, expired IDs. This means we get a bunch of "false positive" alerts every time we get spidered. I'd love to have some way to tell the bots to go ahead and crawl the page, but not use the GET parameter--just index the parameter-less page. Is this even remotely possible with a robots.txt file or something similar?


Note: I know the best way to solve this is change the page's behavior and that is, in fact, happening in a few weeks. I'm just looking for a solution for the meantime.

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

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

发布评论

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

评论(2

尤怨 2024-11-16 18:35:52

您可以在 robots.txt 中使用以下内容建议蜘蛛程序忽略网址的某些部分:

User-agent: *
Disallow: *id=

编辑以澄清:这将导致蜘蛛程序忽略 GET 字符串中带有 id=blah 的任何网址 - 它不会不要神奇地“剥离” id= 部分。但是,这实际上正是您想要的,因为没有“?id=”参数的普通 URL 返回您想要索引的数据。

You can suggest that spiders ignore certain parts of your URL with the following in robots.txt:

User-agent: *
Disallow: *id=

Edit to clarify: This will cause spiders to ignore any URLs with id=blah in the GET string -- it doesn't magically "strip off" the id= part. But, this is effectively what you want since the normal URL with no "?id=" parameters returns the data you want indexed.

烦人精 2024-11-16 18:35:51

在检查 _GET 的 if 语句中,输入以下 HTML:

<meta name="robots" content="noindex, nofollow">
<meta name="googlebot" content="noindex, nofollow">

Inside the if statement where you check the _GET, put this HTML:

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