- 支持VMess和VLESS两种协议
- 支持自定义websocket路径
- 伪装首页(3D元素周期表)
- HTML5测速
- 使用v2ray最新版构建
请求/,返回3D元素周期表
请求/speedtest/,html5-speedtest测速页面
请求/test/,文件下载速度测试
请求/ray(可配置)v2ray websocket路径
提示:UUID请使用UUID生成器,推荐UUID Generator
想改其他传输协议的请参考HTTP路由/HTTP支持版本然后酌情修改,仅限有经验用户修改,因修改传输协议出现连接错误的本项目不承担任何责任!!!
0.给本项目个stars
1.将本项目fork至自己仓库修改Deploy to Heroku按键指向地址为自己仓库地址:"deploy?template="后面改为自己的仓库地址就可以了
2.点击上面紫色Deploy to Heroku,会跳转到heroku app创建页面,应用程序名无需填写也能创建,名字会由heroku随机生成,选择节点(美国或者欧洲),新用户只需要自定义UUID码和CADDYIndexPage(参考:Caddy主页配置),其他建议保持默认,点击下面deploy,几秒后搞定!
3.若出现We couldn't deploy your app because the source code violates the Salesforce Acceptable Use and External-Facing Services Policy.提示,则返回仓库,>Setting>Repository name修改仓库名。
4.若执行了第3步修改仓库名的操作,则必须修改app.json中的name和description,十分重要,切记!!!!
5.注意repository必须留空以免项目被禁
6.再修改Deploy to Heroku按键指向地址为自己仓库地址,重复2的操作
7.带有删除线的部分表示已经废弃或不适用
| 名称 | 值 | 说明 |
|---|---|---|
| PROTOCOL | vmess vless(可选) |
协议:nginx+vmess+ws+tls或是nginx+vless+ws+tls |
| UUID | uuid在线生成器 | 用户主ID |
| WS_PATH | 默认为/ray |
路径,请勿使用/speedtest,/,/test 等已经被占用的请求路径 |
heorku可以绑卡(应用一直在线,不扣费),绑定域名,套cf,uptimerobot 定时访问防止休眠(只监控CF Workers反代地址好了,不然几个账户一起监控没几天就把时间耗完了)
CloudFlare Workers单账户反代代码
addEventListener(
"fetch",event => {
let url=new URL(event.request.url);
url.hostname="appname.herokuapp.com";
let request=new Request(url,event.request);
event. respondWith(
fetch(request)
)
}
)CloudFlare Workers单双日轮换反代代码
const SingleDay = 'app0.herokuapp.com'
const DoubleDay = 'app1.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)
)
}
)CloudFlare Workers每五天轮换一遍式反代代码
const Day0 = 'app0.herokuapp.com'
const Day1 = 'app1.herokuapp.com'
const Day2 = 'app2.herokuapp.com'
const Day3 = 'app3.herokuapp.com'
const Day4 = 'app4.herokuapp.com'
addEventListener(
"fetch",event => {
let nd = new Date();
let day = nd.getDate() % 5;
if (day === 0) {
host = Day0
} else if (day === 1) {
host = Day1
} else if (day === 2) {
host = Day2
} else if (day === 3){
host = Day3
} else if (day === 4){
host = Day4
} else {
host = Day1
}
let url=new URL(event.request.url);
url.hostname=host;
let request=new Request(url,event.request);
event. respondWith(
fetch(request)
)
}
)CloudFlare Workers一周轮换反代代码
const Day0 = 'app0.herokuapp.com'
const Day1 = 'app1.herokuapp.com'
const Day2 = 'app2.herokuapp.com'
const Day3 = 'app3.herokuapp.com'
const Day4 = 'app4.herokuapp.com'
const Day5 = 'app5.herokuapp.com'
const Day6 = 'app6.herokuapp.com'
addEventListener(
"fetch",event => {
let nd = new Date();
let day = nd.getDay();
if (day === 0) {
host = Day0
} else if (day === 1) {
host = Day1
} else if (day === 2) {
host = Day2
} else if (day === 3){
host = Day3
} else if (day === 4) {
host = Day4
} else if (day === 5) {
host = Day5
} else if (day === 6) {
host = Day6
} else {
host = Day1
}
let url=new URL(event.request.url);
url.hostname=host;
let request=new Request(url,event.request);
event. respondWith(
fetch(request)
)
}
) - name: "yourName"
type: vmess
server: yourName.workers.dev
port: 443
uuid: yourUuid
alterId: 0
cipher: auto
udp: true
tls: true
#skip-cert-verify: true
servername: yourName.workers.dev
network: ws
ws-path: /ray



