博文

目前显示的是 2025的博文

在受限的VPS环境下 使用233boy的sing-box脚本

在233boy的群里, 总是遇到有人在受限的VPS环境下安装失败. 看了不少失败的案例, 一般是2个原因: 1. 访问github资源失败 2. 检测服务器IP失败 LT; DR 安装命令 bash <(wget -qO- -o-  https://gh-proxy.org/ https://github.com/233boy/sing-box/raw/main/install.sh | sed s#one\.one\.one\.one#www.cloudflare.com#gi) 维护, 在安装完成之后 find /etc/sing-box/sh -type f -name "*.sh" -exec sed -i 's#one\.one\.one\.one/dns-query#dns.alidns.com/resolve#gi' {} + find /etc/sing-box/sh -type f -name "*.sh" -exec sed -i 's#one\.one\.one\.one#www.cloudflare.com#gi' {} +   访问github资源的问题 用github proxy解决 这里可能会遇到两个问题. 1a) 翻墙脚本里面一般还会获取github资源(脚本或压缩包).  而如果github proxy只解决了获取github脚本本身的问题, 那么脚本运行起来了之后, 获取github资源还是会失败. 所以我们需要能处理 github脚本嵌套调用 的 github proxy. 最早的 https://github.com/hunshcn/gh-proxy 就没有处理github脚本的嵌套调用 而  https://github.com/crazypeace/ghproxy  就处理了github脚本的嵌套调用 所以如果你用到的github proxy发现脚本跑起来了, 但是下载github资源报错, 说明没有处理github脚本的嵌套调用. 那么你需要换一个github proxy, 或者 自己搭一个 . 1b) 常见的github proxy是用域名访问的.  那么你的VPS厂商是有可能在网络环境针对github proxy域名进行屏蔽的. 所以如果你...

CloudCone VNC 不能输入 空格 浏览器开隐私模式屏蔽插件后 正常

图片
问题 今天遇到一个奇怪的问题 CloudCone 和 RackNerd 的web方式VNC 不能输入空格 CloudCone 的问题比较大.  RackNerd 就算遇到这样的问题, 也可以用 粘贴功能来绕过这个问题. CloudCone的VNC没有粘贴功能. 我就很苦恼. 解决方案 弄来弄去, 偶然发现 Firefox 就没有问题. 然后发现 Chrome 开隐私模式(相当于屏蔽了插件), 也没问题.

在 VPS 注册页面 和 美国人信息页面 高亮显示关键字 油猴篡改猴tampermonkey脚本

图片
前言 在购买VPS的时候, 会遇到需要填写个人信息的时候. 我们常常会找一个生成随机美国人信息的网页. 我有一个想法, 希望快速方便的知道哪个信息填写到哪里. 面向GPT开发 有这样一个HTML页面 页面中可能包含 "first name", 也有可能 是在 input元素的 placeholder 属性中包含 "first name" 我需要查找并高亮这些 "first name"  把这些需求发给GPT. GPT生成的结果分为了CSS和JS脚本两部分. 于是再向GPT提要求 需要整合为可以在浏览器的 console 执行的 js 文件  GPT生成了一个整合的JS文件. 在浏览器 F12 开发者工具的Console中进行测试. 对于 RackNerd 的注册页面, 效果为红色边框. 对于美国人信息页面, 效果为黄色文字底色 * 注意, 此页面上, 写的是 Firstname 而不是 First name. 代码需作一点修改. 在有一些 美国人信息页面上, 没有 Firstname 这样的内容, 只有 Full name 所以我们向GPT继续提出修改意见. 把 first name, firstname, full name, fullname, 全名, 姓名 归为一类, 显示同样的高亮颜色或边框颜色. 对于同一类关键字, 边框颜色和文字底色颜色应该一致. 测试, 结果可以了. 接下来, 把这个结果推广到其它信息, 并且要求不同类的信息, 使用不同的颜色. 把 first name, firstname, last name, lastname, full name, fullname, 全名, 姓名 归为一类, 显示同样的高亮颜色或边框颜色. 把 phone number, phone, 电话 归为一类. 把 street address, street, 街道地址, 街道 归为一类. 把 city, 城市 归为一类. 把 full state name, state, 州全称, 州 归为一类. 把 postcode, zip code, 邮编, 归为一类. 以上每一类, 都要使用独特鲜明的颜色, 不应该与其它任何一类颜色相同. GPT返回的结果, 在浏览器console中测试. 效果不错. 用油猴插件...

YouTube 视频信息页面 网速换算为 MB/s 油猴篡改猴tampermonkey脚本

图片
前言 看到一个群友的YouTube 视频信息页面 网速换算为 MB/s 手痒, 也想自己整一个. 分析 F12开发者工具, 选择视频信息面板上的网速 HTML元素. 右键菜单 Copy JS path 得到 显示网速的文字 HTML 元素path为 document.querySelector("#movie_player > div.html5-video-info-panel.ytp-sfn > div > div:nth-child(9) > span > span:nth-child(2)") 面向GPT开发 我有一个html页面, 其中这个位置的元素 1) document.querySelector("#movie_player > div.html5-video-info-panel.ytp-sfn > div > div:nth-child(9) > span > span:nth-child(2)") 内容是  17085 Kbps 这样的格式, 我需要在这个元素 1) 的后面, 增加一个元素 2) , 内容为 元素 1) 的内容换算为 MB/s 的单位. 元素 2) 的数字 应该每10秒刷新 GPT开发的结果, 先在 F12 工具的 console 里面测试效果. 效果正常. 用油猴插件固定此脚本的效果 具体细节步骤略. 油猴插件 https://chromewebstore.google.com/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo 脚本文件名应该为 xxx.user.js @match 中为 https://www.youtube.com/watch* 效果为匹配所有YouTube播放页面url GPT开发的代码填写到 // You code here ... 下面 上传GitHub https://github.com/crazypeace/youtube-MB-per-s ======== 后记 本次使用GPT的过程中, 用到的GPT是 Gemini

用Cloudflare Snippet实现反代blogspot

图片
前言 最近看到有人应用 cloudflare 的 snippet 实现 像 worker 一样的节点功能. 思路 看来,  一方面, 免费用户也有机会使用 snippet 了. 另一方面, snippet 的功能也增强了, 和worker 的区别更小了. 那么我就想用snippet实现之前用worker实现的反代blogspot的效果. 实践 uniproxy里面的语法比较老, 是这样的 addEventListener('fetch', event => {     event.respondWith(handleRequest(event.request)) }) 用在snippet的话, 要改成这样的 export default {   async fetch(request, env, ctx) {     try {       return await handleRequest(request, env, ctx);     } catch (e) {       return new Response(e.message || "Internal Error", { status: 500 });     }   }, }; 我让GPT做了转换.  从结果来看, 就除了这一点变化, 其它代码全部保持原样. 已上传Github https://github.com/crazypeace/cloudflare-workers-uniproxy/blob/master/snippet.js 反代blogspot的worker代码 把需求发给GPT 当我把同样一份代码用于 worker 和  snippet  有没有办法识别当前环境是 worker 还是 snippet, 从而 打开 或关闭 KV相关的代码逻辑? 结果是判断是否存在绑定KV的环境变量. 这个逻辑本身也挺好的, 即使是用于worker, 也可以避免在worker的环境下, 用户没有绑定KV而产生异常. 已上传Github https://github.com/crazypeace/cf-wo...

Win10 内存不足 Chrome页面崩溃 Disable-MMAgent关闭内存压缩 关闭sysMain服务

图片
来源 https://eller.top/posts/109 我只是记录一下, 以防信息源博客不见, 也方便以后我自己搜索. 1. 关闭内存压缩 管理员身份启动PowerShell 命令行执行 Disable-MMAgent -mc 检查关闭内存压缩, 在命令行执行 Get-MMAgent 检查结果中应包含 MemoryCompression            : False 2. 关闭sysMain服务 关闭windows服务的方法有很多, 问一下Google和GPT都容易得到答案. ======== 完

Blogger 首页显示博文的标签

图片
前言 我想促进访问者跳转到更多的博文. 在单篇博文的页面, 我把 标签放在了文章的标题下面. 我想在首页也实现类似的效果. 分析 打开 blogger 后台 - 主题背景 - 修改HTML 跳转到 Blog1 段. 阅读HTML, 发现是这里显示标签 并且有逻辑判断是否为博文页面. 我们修改为 <b:includable id='postLabels'> <b:if cond='data:widget.type == &quot;Blog&quot;'>   <b:include name='super.postLabels'/> </b:if> </b:includable> 可以注意到  data:view.isSingleItem and   被删除了. 效果 成功了.

电报Telegram 贴纸Sticker 翻墙新手 FuckGFWNewbie

图片
点此链接添加贴纸: https://t.me/addstickers/fuckgfwnewbie 新增几个特色贴纸. 有人问推荐一个"最好的"XX (机场, 协议, 软件, ...) 有人说 naive 有人"不懂就问" XXX

有人说我给垃圾VPS拉皮条

图片
有人说我给垃圾VPS拉皮条. 指的是RackNerd CloudCone厂商. 一般是批评这些内容: 翻墙效果差 和XXX比起来效果差 不如一步到位买XXX 不如机场省心 不如XXX机场 不如一毛机场 不如免费机场 不如免费CloudFlare节点 我想说的是, 1.  不同的人有不同的翻墙需求. 对带宽/ 延迟/ 流量 的具体需要都不一样. 拿我自己来说, 我就是 1080p 看看油管 看看黄. 我对于 视频秒开 和 拖进度条的丝滑程度没有那么敏感. 2. 中国这么大, 不同的省份, 不同的运营商, 国际出口不一样, GFW的行为也不一样. 我一直坚持, 你自己拿测试节点试用, 以你的实际体验效果为准. 这个效果 和这个价格, 你觉得满意再买, 不满意就不要买. 3. 对于翻墙新手, 如果你满意测试节点的效果, 那么你可以买和测试节点一样的机房, 用一样的脚本, 搭一样翻墙协议的节点. 尽最大可能的避免卖家秀和买家秀的问题. 4. 没有花钱的不对. 你愿意用更多的钱, 换来更好的体验, 这当然没问题. 与此同时, 也有人不想在翻墙上花那么多钱. 我一直面对的是翻墙新手. 有的人没有太多的钱来翻墙; 有的人担心学不会搭梯子, 买VPS的钱就浪费了. 我的衡量标准就是一年100CNY左右这个价位. 5. 用自己的VPS和用机场, 是完全不同的消费观念和使用习惯. 一方面, 如果在墙外平台上有账号, 会希望有一个稳定的出口IP, 避免被平台风控. 另一方面, 我自己没有解锁流媒体的需求. 一个自己的VPS就够了. 最后, 我个人观点就是, 从安全的角度考虑, 避免使用机场. 6. 对于各种免费的或者钻空子的资源. 比如, 免费的 Oracle机器, 免费的CloudFlare计算资源, 或者其它一些免费的容器呀, 游戏服务器呀, ... 除了那些只是探讨技术的Geeker以外, 我觉得对于大多数人来说, 这本质上是一个金钱和时间的平衡决策, 看你愿意花 多少钱-多少时间 罢了.

下载 独树不成林 播客的全部封面 并做成 电报telegram 贴纸sticker

图片
1. 得到这个播客的RSS 感谢 https://medium.com/彼得潘的試煉-勇者的-100-道-swift-ios-app-謎題/236-利用-apple-podcasts-網站開發有趣的-podcast-app-99b057270be1 我们先找到播客的apple podcast地址 https://podcasts.apple.com/cn/podcast/独树不成林/id 1711052890 注意id的部分 然后把id拼到这个链接的后面 https://itunes.apple.com/lookup?id= 得到 https://itunes.apple.com/lookup?id= 1711052890 用浏览器访问, 得到一个JSON格式的文件. 用文本工具打开(你也可以找JSON工具, 如 https://www.json.cn/ ) 找到 feedurl https://feed.xyzfm.space/y9qnpfdrctnx 这就是RSS了. 2. 找到封面图片 用浏览器打开RSS链接, 找到像下面这样的部分就是封面图片 <itunes:image href=" https://image.xyzcdn.net/Fgd_z5yexkQF_GB0LF4Xncqqf8CU.png "/> 3. 面向GPT开发 实现一个基于HTML JS的工具 页面包含以下几个部分 1) 文本框 可输入podcast的RSS地址 2) 文本框 可从 1) 获取RSS内容, 也可以手工输入RSS内容 3) 文本框 分析 2) 的内容, 列出所有封面图片的地址. 可手工编辑 添加或删除 4) 显示 3) 中的地址对应的图片 举例: https://feed.xyzfm.space/y9qnpfdrctnx 是一个podcast的RSS地址, 会被填写到 1) 1) 可得到RSS数据, xml格式.  会被填写到 2) 2) 中有 <itunes:image href="https://image.xyzcdn.net/Fgd_z5yexkQF_GB0LF4Xncqqf8CU.png"/> 这样的元素, 应该将 https://image.xyzcdn.net/Fgd_z5yexkQF_GB0LF4X...

去掉cfnew的视觉特效 的操作整合到Github Action里

前言 上一篇我们实现了去掉cfnew的视觉特效的结果 但是, 如果明天cfnew发新版本了呢? 我们又要打开文件, 找到位置, 修改, ... 还是有点麻烦的吧? 有没有再懒一点的办法呢? 思路 上一篇 的具体流程是这样的: 1. 从 byjoey/cfnew 拿到新的 "明文源吗" 2. 修改 "明文源吗" 并上传 3. Github Action完成混淆并保存为 "少年你相信光吗" 我们能不能把第2步用 Github Action 实现? 面向GPT开发 有这样一个github项目 项目里有一个文本文件 file1 我需要用Github Action对文件做如下操作: 1) 查找所有的 animation: 替换为 //animation: 2) 查找所有的 function createMatrixRain() {, 在下一行添加一行 return; 这个Github Action不要自动触发, 只能手动触发 把上面的需求发给GPT, 得到结果 name: Modify File1 on:   workflow_dispatch:  # 手动触发 jobs:   modify-file:     runs-on: ubuntu-latest          steps:       - name: Checkout repository         uses: actions/checkout@v4         with:           token: ${{ secrets.GITHUB_TOKEN }}              - name: Modify file1         run: |           # 1. 替换 animation: 为 //animation:       ...

去掉cfnew的视觉特效 保留业务逻辑

图片
前言 有人反馈  Joey的cfnew  的页面效果搞得设备好卡, 希望把炫酷特效去掉. 我在群里提过一句, 向GPT把需求描述清楚, 整个事情并不困难. 过了一段时间, 还是有人在发这样的消息.  那么, 我来玩玩吧. 在这个GPT的时代, 我们来尝试一下这个过程到底是困难还是容易. 技术基础 不受CloudFlare干扰的Worker调试环境 (其实, 严格地说, 这并不是必要条件. 只是在不确定修改代码是否正确时, 有一个方便的调试环境会帮助许多. 所以我多花了一点时间先把这个调试环境搞定) 面向GPT开发 把 明文源码 文件上传到GPT, 问 分析上传的文件, 这是一个用于cloudflare worker环境的js脚本 请分析出显示HTTP页面中的视觉特效部分, 位于代码的什么位置. GPT的回答 在代码中搜索 createMatrixRain 找到这个函数, 在函数的开头添加一个 return, 让函数提前结束. 注意, 有2处, 一个是主页, 一个是 path/UUID 页面. 保存修改后, 让wrangler重新跑起来. 页面上的文字下雨效果消失了. 发现 path/UUID 页面的卡片上还有一些动效, 像是高光扫过平面一样. 继续看GPT的回答, 在代码中查找 animation , 注释掉. 保存修改后, 让wrangler重新跑起来. 这下页面上全部动效都没有了. 接下来, 我们上传到真实的 cloudflare worker 环境试试 混淆代码 先fork一下 原项目 , 打开我们的fork项目的 Github Aciton 允许运行. 然后把我们修改的 "明文源吗" 上传, 等Github Action进行混淆. (原项目就叫"源吗", 我保持原样而已) 部署到真实的 worker 环境 等混淆完成, 把 "少年你相信光吗" 的内容部署到 worker. 成功了. 各项功能正常. 实际使用场景测试 从 https://xxxx.yyyy.workers.dev/ 的页面获取订阅, 导入翻墙客户端软件试用. * workers.dev 墙内屏蔽的问题用 uniproxy 解决 https://www.youtube.com/watch?v=VpQlGQq7FCk 正常. Gi...

在VPS上本地运行CloudFlare Worker环境 Wrangler V3

图片
前言 众所周知, CloudFlare 的 Worker 上面部署项目的时候, 有可能因为关键字触发 1101 错误. 当然圈子里已经有成熟的代码混淆方案. 但是为了我们更好的调试和开发, 最好是有一个不受CloudFlare干扰的开发环境. CloudFlare官方就提供了一个本地运行的Worker环境方案 Wrangler V3 安装 Wrangler V3 参考官方文档  https://developers.cloudflare.com/workers/wrangler/install-and-update/ 用 nvm 安装 node.js npm  参考官方文档   https://github.com/nvm-sh/nvm?tab=readme-ov-file#install--update-script curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  nvm install node 检查 node 和 npm node -v npm -v 用 npm 安装 Wrangler   npm install -g wrangler 启动一个worker.js 建一个工作目录 mkdir cfworker cd $_ 把 Joey的cfnew  未混淆的脚本下载到刚刚的工作目录 (仅为示例, 并非有特定意义) wget https://github.com/byJoey/cfnew/raw/refs/heads/main/%E6%98%8E%E6%96%87%E6%BA%90%E5%90%97 -O worker.js 用 Wrangler 启动 worker.js npx...

电报 Telegram 用户和群主 要保护好自己的用户名username 不要让别人占了

图片
https://t.me/homelab520 这以前是 恩山用户相关的群, 里面都是讨论 NAS啊, 软路由啊, ... 今天我偶然看一眼, 是这样的了. 我猜是因为某种原因, 用户名username被释放了, 然后就被人占了.

电报 Telegram 用户不要使用用户名 群组不要使用公开群 为了对抗广告信息

图片
前言 电报关键字监控机器人 电报关键字反应机器人 实验 在不同情况下, 关键字监控频道中能输出什么信息, 意味着 关键字监控机器人能获得什么信息 监控机器人可以获得  群消息的 链接, 如 https://t.me/testbot/5678 或 https://t.me/c/3101361513/1234 群组的 username 或 userid 用户的 username 或 userid 用户有用户名, 群组是公开群 #FOUND (https://t.me/tteessttbboottt/487) "✌️" IN test公开群(@tteessttbboottt) FROM 小 白龙(@hakuhakoo) ✌️ 用户有用户名, 群组是私有群 #FOUND (https://t.me/c/3101631513/3) "✌️" IN test私有群(3101631513) FROM 小 白龙(@hakuhakoo) ✌️ 用户无用户名, 群组是公开群 #FOUND (https://t.me/tteessttbboottt/486) "✌️" IN test公开群(@tteessttbboottt) FROM icd yct(7809800531) ✌️ 用户无用户名, 群组是私有群 #FOUND (https://t.me/c/3101631513/2) "✌️" IN test私有群(3101631513) FROM icd yct(7809800531) ✌️ 作为一个只关注了监控频道的电报Telegram账户, 能否给关键字用户发私信 用户有用户名, 群组是公开群 OK 用户有用户名, 群组是私有群 OK 用户无用户名, 群组是公开群 OK 用户无用户名, 群组是私有群 NG 总结 所以, 为了对抗广告信息, 用户不要使用用户名, 群组不要使用公开群 作为用户, 如果你不希望自己喜欢的用户名username被别人使用, 你可以创建一个频道, 占用这个用户名. 作为群主, 你可以用你原来想用的群用户名username创建频道, 然后在频道中提示用户使用私有群的加群链接.

The Hot3 in Last 7 Days

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

极简一键脚本 搭NaiveProxy梯子 自定义端口 与Caddy V2前置的VLESS/Vmess V2Ray共存 可开CDN