起源
之前叶泯希哥哥帮我搞Umami数据统计(详见文章建站备忘录)的时候在我的Umami地址前面加了一个他自己的域名然后就能用了,我当时没看懂那个是什么,后来我才发现那是一个https请求转发代理,直接在后面加上你想要访问的域名就可以直接访问那些被墙的网站了。虽然我已经有VPN了,但是有这样一个东西它!不!酷!嘛!而且根本不需要在你要用的那个电脑上配置任何东西啊!访问一个网址就能用啊!所以说我马上决定:我也要有这个东西!
但是这个请求转发代理一看就很难啊,怎么搞呢?我在叶泯希哥哥的请求转发代理那边找到了一点线索。他在他那个代理的首页写:“该服务不收取任何费用,使用开源代码创建。”嘻嘻,那不就好办了嘛,开源代码一看就是在GitHub上的呀!于是我就去网上搜“https请求转发代理”,找到了这两篇文章:
tinyproxy GitHub仓库:
这两个是用tinyproxy实现的请求转发,我去叶泯希哥哥那里看了下,他用的应该也是这个,因为tinyproxy官网和叶泯希哥哥那个页面风格挺像的。但是tinyproxy有三个问题:第一,他需要服务器,要花钱买。第二,太麻烦了。第三,我不会啊!
于是我想到,之前有很多类似的可以在服务器部署的东西我看的教程都是用CloudFlare Worker搞的,那这个东西它会不会也有CloudFlare Worker版的呢?于是我就去网上搜了下“使用CloudFlare Worker部署tinyproxy”,结果是什么呢?嘿嘿你猜的没错,结果是:有!但是用的是另一个请求转发代理服务,也是GitHub上面的(GitHub真是个好东西啊),叫jsproxy。
jsproxy GitHub仓库:
我从看到这两篇文章到部署完成前后花了不到五分钟,如果CloudFlare反应速度再快一点的话我绝对可以一分钟搞完的,OK上教程!
教程
- 注册一个CloudFlare账号(已有请忽略)
- 创建一个CloudFlare Worker
账号主页 → 计算(Workers) → 创建 → 从Hello World开始 → 部署 → 编辑代码 - 复制代码到CloudFlare Worker
打开这个页面 → 复制代码 → 粘贴到CloudFlare Worker → 点击部署 → 返回 → 继续处理项目 - 绑定自定义域名
如果没有自己的域名的可以看看我这篇文章获取一个免费域名 设置 → 域和路由 → 添加 → 自定义域 → 输入域名 → 添加域
OK然后访问你绑定的域名就大功告成啦!别问我为什么不截屏,懒……
还有因为CloudFlare的免费流量每天有100,000请求的额度,你一个人理论上是用不完的,但是如果分享给太多人了的话就不好说了。
自定义主页
- Fork 仓库
fork一份jsproxy仓库到自己名下(记得取消“Copy the master branch only”) 切换到gh-pages
分支 - 编辑文件
编辑文件404.html,assets/indexmd_v3.html - 启用 GitHub Pages
仓库 Settings → Pages → 选择 gh-pages 分支作为源 → Save
访问https://你的用户名.github.io/你的仓库名
检查是否生效 - 修改 Worker 代码
修改 Worker 代码中的 ASSET_URL 部分点击部署1
const ASSET_URL = 'https://你的用户名.github.io/jsproxy'; // 替换为你的 Pages 地址
然~ 后~ 就~ 好~ 啦!