博文

目前显示的是标签为“CloudFlare”的博文

部署在 cloudflare worker 中的 telegram bot 收到 http url 下载 以文件形式回复 telegram 消息

图片
效果 Github https://github.com/crazypeace/cf-worker-tg-dl-bot 开发过程 总共对话3次 在 cloudflare 的 worker 中运行一个bot bot token 1234567890:AAHkMpXv2nQrWsYd8bJtLfCeUo9GiN1KmZw 功能是, bot 收到telegram 消息时, 把消息内容识为 http url, 访问后, 将内容以文件形式回复telegram 消息. 注册 Webhook 的过程, 优化为访问这个 worker 的 url 后面跟上  webhook, 如 https://green-c943.crazypeace.workers.dev/webhook set webhook 是不是要传入一个秘密字符串? 用到的AI 网页版免费账户claude https://claude.ai/

Cloudflare 的 worker 运行 telegram bot 自动回复关键字 将回复的消息延迟删除

前言 在群里搞了一个关键字回复机器人. Github 上面大把的项目. 略. 但是一直没有自动延迟删除回复消息的功能. 我的概念里面 worker 是 http 请求时才会运行的, 也就是说, 有人在群里发了消息, 这个worker才会运行. 那自然就做不了延迟删除消息了. 灵感 今天突发奇想, 问了一下AI, "cloudflare 的 worker 怎么实现定时任务".  WOKAO, 原来 2022年官方就支持了 Cron Trigger 接下来就是无趣的面向GPT开发 粘贴 的代码是一个基于 cloudflare worker 的 telegram bot.   我要实现bot回复的消息延迟5~10分钟删除的功能. 我给这个 worker 绑定了一个 KV :  BOT_MSG, 用于保存发出的消息的数据. 我给这个 worker 设置了定时5分钟的 cron trigger. 请改进这段代码 贴一下代码吧. const TOKEN = 'your_bot_token' const WEBHOOK = '/endpoint' const SECRET = 'you_should_generate_random_string' const DELETE_AFTER_MS = 5 * 60 * 1000 // 5分钟 /**  * 将已发送的消息存入 KV  * key: msg:{delete_at}:{chat_id}:{message_id}  */ async function saveMessage(env, chatId, messageId) {   const deleteAt = String(Date.now() + DELETE_AFTER_MS).padStart(16, '0')   const key = `msg:${deleteAt}:${chatId}:${messageId}`   await env.BOT_MSG.put(key, '1', {     expirationTtl: 20 * 60 // 20分钟兜底清理   }) } /**  * Cron 触发:删除所有到期的消息 ...

ghproxy 修改脚本内容 修改aff 修改下载的文件

图片
前言 之前我们实现了 ghproxy 对 github 脚本的内容进行分析并修改, 给所有的 github 链接再套上 ghproxy 刚刚有了个想法, ghproxy修改内容还能实现什么? 思路 假设有个很受欢迎的一键脚本, 里面有VPS和VPN的AFF链接, 还有下载sing-box的压缩包 (我编造了一个示例) bash <(curl -fsSL https://github.com/crazypeace/ghproxy/raw/refs/heads/main/fake/test-install.sh) 基于 现有的 ghproxy 的 worker.js 文件 , 面向GPT开发 这是一个 cloudflare 的 worker 的 JS 脚本 增加以下处理: 1. 在对 .sh 文件的内容的处理中, 对链接的处理增加以下效果 当链接包含 racknerd 和 aff= 时,  将aff= 后面的数字替换为 54321 当链接包含 justmysocks 和 aff= 时,  将aff= 后面的数字替换为 98765 2. 在向目的url 进行 fetch之前 , 增加处理 当 path 是 https://github.com/SagerNet/sing-box/releases/download/v1.12.15/sing-box-1.12.15-windows-amd64.zip   时, 改为fetch https://github.com/XTLS/Xray-core/releases/download/v25.12.8/Xray-windows-64.zip 并返回数据 得到的结果我上传 Github 了 https://github.com/crazypeace/ghproxy/raw/refs/heads/main/fake/test-worker.js 测试 下图中,  左边是套 "正常" 的 ghproxy 这里以 https://ghproxy.lvedong.eu.org/ 为例 bash <(curl -fsSL https://ghproxy.lvedong.eu.org/https://github.com/crazypeace/ghproxy/raw/ref...

设置域名的Workers Routes路由 屏蔽worker用量异常超过限额的path

图片
前言 上一篇设置了速率限制 后, worker的用量不会超额了. 但是, 像这样的使用方式肯定是不正常的. 我们看看怎样屏蔽掉这些使用者. 分析 Compute & AI -> Workers & Pages -> 点选你的worker -> Observability -> Traces 这里就能看到所有的请求了. 很明显, 这些请求都是用来访问一个 https://github.com/nap0o/* 这样的链接 那么, 我们针对性的屏蔽就行了.  实践 点击你的域名 -> Workers Routes -> Add route 添加路由 把 https://ghproxy.lvedong.eu.org/https:/github.com/nap0o/* 设置为 None (没有 worker) 把 https://ghproxy.lvedong.eu.org/* 设置为 ghproxy 的 worker ======= 完 ======= 后记 当你在浏览器输入下面这样的url时, https://ghproxy-test.lvedong.eu.org/https: // github.com/nap0o/icmp9.com/releases/download/icmp9/icmp9-docker-debian-arm64 CloudFlare会预处理为下面这样, 再进入它的各个组件 https://ghproxy-test.lvedong.eu.org/https: / github.com/nap0o/icmp9.com/releases/download/icmp9/icmp9-docker-debian-arm64 所以, 我们在设置域名的Route路由时, 要写成 https://ghproxy.lvedong.eu.org/https: / github.com/nap0o/* 同样的道理, 你常常会在worker.js里面看到 把 https: /  恢复为 https: //  再把path当作一个url 拿去fetch的逻辑. ======= 相关推荐 《ghproxy 修改脚本内容 修改aff 修改下载的文件》 《白嫖worker 自建短链服务 Url-Shor...

CloudFlare设置规则防止worker用量超过限额

图片
问题 发现我的 ghproxy 连续两天用量异常 用光了10K限额 解决方案 CloudFlare 免费计划 不能使用全局的 WAF 只能进到域名里面设置简单规则 点击某一个域名之后, Security -> Security rules -> Create rule -> Rate limiting rules 填写一个规则名称, 随你喜欢 点击 Edit expression 填写 (http.host wildcard "ghproxy.*") * 因为我的 ghproxy 的域名是 ghproxy.xxxx.yyyy.zzz 所以这里我写成这样的匹配规则 Rate条件设置为 10秒内 8 次 * 我这只是个示例, 你想设置10秒内5次随你喜欢 动作设置为 Block 拉黑 持续时间设置为10秒 点击 Deploy 部署 ======== 完 ======== 相关推荐 《设置域名的Workers Routes路由 屏蔽worker用量异常超过限额的path》 《ghproxy 修改脚本内容 修改aff 修改下载的文件》 《极简 GitHub Porxy 支持GitHub脚本的无限嵌套调用》

Cloudflare防火墙优化

图片
在你使用了Cloudflare的CDN服务之后,也许你会偶尔遇到不流畅的问题,有可能是因为Cloudflare的防火墙拦截了部分梯子的请求。

The Hot3 in Last 7 Days

酒馆SillyTavern 玩英文角色卡 也能以中文输出 设置世界书Lorebooks

搭 Docker版 Sub-Store订阅转换专家 带 http-meta 实现 集合订阅 测延迟 排序 筛选 生成新订阅 定时任务上传Gist

酒馆SillyTavern 用中文讲故事 修改角色卡 修改AI生成的历史记录