注意:不要瞎搞!不要瞎搞!不要瞎搞!!!玩死了对大家都不好。
必要条件
- Heruku 账号
- 科学上网环境
- Cloudflare 账号 注意:所有教程类的文章,阅读的同时都需要考虑它的时效性。如果你部署过程遇到问题或者方法失效可留言讨论。
免费且高速! 最近速度只有1m/s左右,但也能满足日常需求,毕竟自行车还要啥轮子。
开始部署
科学上网环境也许不是必要条件,主要是因为国内网络打开Heroku有点慢,所以有科学上网环境会使整个过程更加顺利一些。注册账号的过程不予截图展示,先去注册好账号再来操作。
打开项目
首先,打开 Github项目 地址
将项目 fork 到自己的账号下。
修改README.md
文件,将部署链接修改为自己的项目。
修改后提交即可。
接下来,点击部署按钮即可。
对于刚注册的Heroku账户,会弹出服务协议页面,点击接受就好了。正确的页面如下图所示,如果点击接受之后没有出现下面这个界面,可以重新打开GitHub项目点击部署按钮进行尝试。
此处的 APP name 在 Cloudflare 代理中还会用到,小白应该记住这个名字。当然了,这些信息其实都是可以查看的,熟练使用的话不需要刻意记。
生成UUID
打开 V2rayN 客户端,点击
服务器
>添加VMess服务器
点击
生成
按钮,记录用户ID并填入部署界面AUUID中。
部署
点击Deploy app
按钮,如下显示即为部署成功。
点击Manage APP
,进入管理页面,点击Setting
,可以查看APP的详细信息,在域名栏中可以看到自己的项目地址,点击这个地址跳转到部署的伪装网站中,伪装网站默认为 Caddy works!
Cloudflare 代理
登录后点击
Workers
点击
创建Worker
在弹出页面中的脚本填入下面的代码,并按图示步骤操作。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20const SingleDay = '应用程序名1.herokuapp.com'
const DoubleDay = '应用程序名2.herokuapp.com'
addEventListener(
"fetch",event => {
let nd = new Date();
if (nd.getDate()%2) {
host = SingleDay
} else {
host = DoubleDay
}
let url=new URL(event.request.url);
url.hostname=host;
let request=new Request(url,event.request);
event. respondWith(
fetch(request)
)
}
)获取新的代理地址。
上述代码实际上是对两个应用程序之间做了一个简单的负载均衡处理,单双号使用不同的应用程序上网。 截图中并没有这样处理。 建议使用这种负载均衡的方式运行程序,避免过度使用而造成封号。 具体方式为:
- 按上述步骤再部署一个应用程序,需要注意使用相同的UUID和path!!!
- 代码中的 应用程序名1 和 应用程序名2 分别替换成两个不同的名称,点击部署即可。 下面提供一种多个程序做负载均衡的代码。
1 | const Day0 = 'app0.herokuapp.com' |
客户端节点添加
以v2rayN客户端为例,添加VMess服务器, 信息填写如下图所示。 信息有所更改,注意下方的更正信息。
更正:
- 上图中的 9 (path)填写 / 即可。
- 上图中的 4 (alterId)填写 64.
速度挺快的,Youtube 1080p 轻松。缺点是不能上 Google 学术。流媒体我没测试,大概率应该也上不去。 建议作为备用节点,别把🐏薅死了,可能像 IBM Cloud 一样核平解决此事。