【问题标题】:How I can find out which page links to a broken URL?如何找出哪些页面链接到损坏的 URL?
【发布时间】:2012-10-16 12:18:53
【问题描述】:

当用户代理不发送引荐来源网址时,我如何找出哪些页面链接到了损坏的 URL?

我每天在我的网站上收到 100 多个针对此 URL 的请求: /controls/WebService/WebService.asmx

...但实际的 URL 是: /WebService/WebService.asmx

我可以只将 URL 重写为另一个,但我宁愿弄清楚“控件”引用的来源。我确实有一个文件夹,其中包含一些使用 Web 服务的控件,但如果我查看源代码,从未提及“/controls/”文件夹...通常,Elmah 日志中没有显示 404 的引用者,但即使出现,我也无法在页面上看到 URL 的问题到webservice页面是正确的。

我在网站上运行了三个不同的爬虫,但它们从未发现任何问题,所以我怀疑它是由具有解析(甚至执行)JavaScript 或其他东西的智能的东西引起的。 “controls”文件夹确实存在的事实让我认为它很可能在某个地方存在真正的错误,而不仅仅是爬虫软件中的错误。

【问题讨论】:

  • 难道有人只是想在您的网站上寻找漏洞吗?
  • 尝试启用 IIS 日志并检查这些请求的用户代理
  • 你能分享网站的域名吗?

标签: asp.net web-crawler broken-links


【解决方案1】:

您可能在控制目录中有一个文件试图通过相对路径引用该 Web 服务。使用 ~/Webservice/Webservice.asmx(如果来自 .net 控件)或简单地使用 /Webservice/Webservice.asmx

【讨论】:

  • 是的,我确定是这样,但问题是找到它!这个有 12 年历史的网站上有数百个页面。我根本找不到它 - 我自己运行的任何爬虫都没有发现问题。
  • 你能在你的解决方案中搜索 Webservice/Webservice.asmx 吗?
猜你喜欢
  • 2013-10-27
  • 1970-01-01
  • 2020-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-29
  • 1970-01-01
相关资源
最近更新 更多