1

目前,我们正在使用 Kentico CMS 作为网站,我们曾经有一个名为 pages/page1.aspx 的页面。我们删除了该页面,但每天 google、bing 和 yahoo sarch 机器人都会尝试阅读该页面。因为页面不存在,CMS 会抛出以下错误(在日志中)

Event URL:  /pages/page1.aspx
URL referrer:   
User agent:     Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)

Message: The file '/pages/page1.aspx' does not exist.
Stack Trace:
at System.Web.UI.Util.CheckVirtualFileExists(VirtualPath virtualPath)
// and the rest of the stacktrace

当我们收到太多这些错误时,整个站点就会崩溃(必须清除 .Net 临时文件并重新启动应用程序池)。基本上我可以转到一个不存在的页面,多次点击刷新并关闭该站点。非常糟糕。但是,首先,我怎样才能让机器人不尝试访问此页面?

提前致谢。

4

3 回答 3

1

如果只是一个页面或几个页面导致了这种情况,请修改robots.tx t 以告诉合法搜索引擎不要检查它。

当找不到页面时,我还会检查您发送的 HTTP 响应?你可能会发送一些东西让蜘蛛认为它应该继续检查?也许您应该尝试永久重定向到您的主页,而不是 404?

最后,WTF?我会和 Ketnico 的人谈谈这个错误。

于 2011-04-11T00:43:39.430 回答
0

您是否尝试过使用 robots.txt 文件?

于 2011-04-11T00:32:29.633 回答
0

我认为你有一个配置错误。虽然 robots.txt 文件有望纠正此问题,但机器人可以选择忽略该文件。

更好的解决方案是正确设置错误页面。当您转到一个不存在的页面时会发生什么?听起来您的系统显示黄色屏幕,这是一个未经处理的异常,一直冒泡到用户。我会检查您的错误页面设置,以便用户(和机器人)被重定向到 404 错误页面。我猜当雅虎和其他人看到那个 404 页面时,他们会停止尝试索引它。

于 2011-04-11T14:05:12.653 回答