c# - Ping 总是成功,无法在 url 上使用 ping 轻松检查正常运行时间

标签 c# .net ping system.net

我因为 OpenDNS 和其他服务(即:roadrunner)而感到沮丧,即使您输入任何无效的 url,现在总是返回 ping,即:lkjsdaflkjdsjf.com --- 我已经创建了供我自己使用的软件,可以 ping 一个 url 来验证该网站是否已启动。这不再有效。有人对此有任何想法吗?

要求:

  • 它应该适用于任何有效的网站,即使是我无法控制的网站
  • 它应该能够从任何可以访问 Internet 的网络运行

  • 我将不胜感激听到其他人现在如何处理这个问题。我想补充一下,我试图在 c# 中使用 System.Net 来做到这一点

    非常感谢你:-)

    新增功能:寻找一个我可以购买并在我的 Windows 机器上运行的解决方案,或者在 c# 中编程。 :-)

    更新:

    非常感谢大家的回答。最终我最终通过这样做创建了一个解决方案:
  • 创建一个从 url 下载指定页面的简单 web 客户端(可能更改为仅标题或使用此通知页面更改)
  • 读取 xml 文件,该文件仅列出要检查的站点/页面的完整 URL
  • 创建了一个 Windows 服务来托管解决方案,以便它可以恢复服务器重新启动。
  • 出错时,将向定义的收件人列表发送电子邮件和短信
  • 大多数值(间隔、smtp、to、from 等)都在 .config 中定义,以便于更改

  • 稍后我将采纳您的一些建议来添加“功能”,其中包括:
  • 用于实时监控的 AJAX 页面。我将使用 WCF 从 asp.net 页面
  • 连接到现有的 windows 服务
  • 仅下载标题(带有页面更改比较选项)
  • 使更多配置(即:在通知之前重试失败)
  • 最佳答案

    Wget是一个不错的选择。它不仅会检查机器是否处于事件状态,还会检查 HTTP 服务器是否正在接受连接。

    关于c# - Ping 总是成功,无法在 url 上使用 ping 轻松检查正常运行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/199219/

    相关文章:

    c# - 如何设置sql参数

    c# - 确定性监视器脉冲/等待并在生产者-消费者收集中实现超时

    ping - 有什么办法可以 "ping"一个电话号码?

    c# - 如何按名称选择 Sqlparameter 列表元素?

    C# session 未从 HTTPHandler 保存

    c# - 泛型双接口(interface)

    loops - 暂停批处理文件直到可以访问主机(使用 ping)?

    c++ - 服务器应用程序必须向 N 个客户端发出 ping 命令。有没有办法让它多线程?

    c# - 有没有更快的方法来检查 LINQ to XML 中的 XML 元素?

    .net - 这有可能将 "If Then Else"折叠为方法吗?