作为个人站长,网站的稳定运行至关重要。如果网站半夜宕机,而你又无法第一时间得知,可能造成巨大的流量和声誉损失。幸运的是,我们有免费且可靠的在线监控服务,可以帮助我们在网站一挂掉时,立刻通过微信或 Telegram 收到通知。
本文将以公认最强大和易用的免费监控服务 UptimeRobot 为例,详细指导你如何设置监控,并将警报推送到 Telegram。
步骤一:注册 UptimeRobot 并添加监控
UptimeRobot 提供永久免费套餐,支持多达 50 个监控项,每 5 分钟检查一次,这对于绝大多数个人网站来说绰绰有余。
- 访问 UptimeRobot 官网并注册账户。
- 登录后,点击左侧的「+ Add New Monitor」。
- Monitor Type (监控类型): 选择 HTTP(s)。
- Friendly Name (友好名称): 填写你的网站名称,例如「我的博客」。
- URL (or IP): 填入你的网站完整 URL,例如 https://www.example.com。
- Monitoring Interval (监控间隔): 免费版默认为 5 分钟。
此时,你的网站已经被纳入监控。下一步是设置接收通知的方式。
步骤二:创建 Telegram 机器人并获取必要信息
要让 UptimeRobot 推送消息到 Telegram,你需要一个机器人(Bot)和你的聊天ID(Chat ID)。
- 创建 Bot: 在 Telegram 中搜索 @BotFather。发送 /newbot 命令,按照提示设置机器人的名称和用户名。BotFather 会返回一个 HTTP API Token(格式类似 123456:ABC-DEF1234ghIkl-799),请保存下来。
- 获取 Chat ID: 启动你刚刚创建的机器人(点击用户名即可)。然后,在 Telegram 中搜索 @get_id_bot,或任何类似的 ID 获取机器人,并向它发送 /start 命令。它会返回你的 Chat ID(通常是一个负数,例如 -123456789)。请保存下来。
步骤三:在 UptimeRobot 中配置 Telegram Webhook
UptimeRobot 通过配置自定义 Webhook URL 来实现与 Telegram 的整合。
- 在 UptimeRobot 仪表盘,点击左侧导航栏的「My Settings」。
- 在页面的底部找到「Alert Contacts」(警报联系人),点击「+ Add Alert Contact」。
- Contact Type: 选择 Webhook。
- Friendly Name: 填写「Telegram 通知」。
- URL: 构造你的 Telegram 消息推送 URL。请将
和 替换为你上一步获取的值。
Webhook URL 示例
这个 URL 结构是 Telegram API 用于发送消息的标准格式:
https://api.telegram.org/bot<YOUR_BOT_TOKEN>/sendMessage?chat_id=<YOUR_CHAT_ID>&text=UptimeRobot%20Status%20Update:%20*M_NAME*%20is%20*M_STATUS*%20at%20*DATE*%20*TIME*&parse_mode=Markdown
注意: URL 中的 %20 是空格的编码。M_NAME, M_STATUS, DATE, TIME 是 UptimeRobot 提供的变量,用于填充监控信息。
- POST Value/Headers: 保持默认或留空。
- 点击「Create Alert Contact」。
步骤四:将监控项关联到警报联系人
最后一步是将刚刚配置好的 Telegram 警报联系人应用到你的网站监控上。
- 回到 UptimeRobot 仪表盘,点击你创建的监控项(例如「我的博客」)。
- 在编辑页面,找到 Alert Contacts to Notify 区域。
- 勾选你刚刚创建的「Telegram 通知」。
- 点击「Save Changes」。
测试结果: 现在,你可以尝试手动停止你的网站服务(例如,如果你是 VPS 站长,可以尝试停止你的 Nginx/Apache 服务几分钟),UptimeRobot 将在 5 分钟内检测到宕机,并立即向你的 Telegram 账户发送警报消息。
汤不热吧