CloudFlare Pages 反代脚本分享
Pgyu Engineer

1. 简介:

今天和大家分享几个CloudFlare Pages 反代脚本,来加速富强。

2. 反代脚本:

2.1 单双日轮换反代代码
default {
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  async fetch(request, env) {
const day1 = 'app0.example.com'
const day2 = 'app1.example.com'
let url = new URL(request.url);
if (url.pathname.startsWith('/')) {
let day = new Date()
if (day.getDay() % 2) {
url.hostname = day1
} else {
url.hostname = day2
}
let new_request = new Request(url, request);
return fetch(new_request);
}
return env.ASSETS.fetch(request);
},
};
2.2 五天轮换反代代码
default {
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  async fetch(request, env) {
const day1 = 'app0.example.com'
const day2 = 'app1.example.com'
const day3 = 'app2.example.com'
const day4 = 'app3.example.com'
const day5 = 'app4.example.com'
let url = new URL(request.url);
if (url.pathname.startsWith('/')) {
let day = new Date().getDay() % 5;
if (day === 0) {
url.hostname = day1
} else if (day === 1) {
url.hostname = day2
} else if (day === 2) {
url.hostname = day3
} else if (day === 3) {
url.hostname = day4
} else if (day === 4) {
url.hostname = day5
} else {
url.hostname = day1
}
let new_request = new Request(url, request);
return fetch(new_request);
}
return env.ASSETS.fetch(request);
},
};
2.3 一周轮换反代代码
default {
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
  async fetch(request, env) {
const day1 = 'app0.example.com'
const day2 = 'app1.example.com'
const day3 = 'app2.example.com'
const day4 = 'app3.example.com'
const day5 = 'app4.example.com'
const day6 = 'app5.example.com'
const day7 = 'app6.example.com'
let url = new URL(request.url);
if (url.pathname.startsWith('/')) {
let day = new Date().getDay();
if (day === 0) {
url.hostname = day1
} else if (day === 1) {
url.hostname = day2
} else if (day === 2) {
url.hostname = day3
} else if (day === 3) {
url.hostname = day4
} else if (day === 4) {
url.hostname = day5
} else if (day === 5) {
url.hostname = day6
} else if (day === 6) {
url.hostname = day7
} else {
url.hostname = day1
}
let new_request = new Request(url, request);
return fetch(new_request);
}
return env.ASSETS.fetch(request);
},
};
2.4 任意天数反代代码
default {
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
async fetch(request, env) {
const cars = [
"app1.example.com",
"app2.example.com",
"app3.example.com",
"app4.example.com",
"app5.example.com"
];
let host = cars[Math.floor(Math.random() * cars.length)]; //随机选择VPS
//let host = cars[new Date().getDate() % cars.length]; //每天自动更换VPS
let url = new URL(request.url);
if (url.pathname.startsWith('/')) {
url.hostname = host;
let new_request = new Request(url,request);
return fetch(new_request);
}
return env.ASSETS.fetch(request);
}
};
  • 本文标题:CloudFlare Pages 反代脚本分享
  • 本文作者:Pgyu
  • 创建时间:2022-06-23 15:10:50
  • 本文链接:https://yayaniub.github.io/2022/06/23/cloudFlare-pages/
  • 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
 评论