看了很多使用Cloudflare加速都是要开通过Sass 那么对于无卡或是无法开通的玩家怎么玩呢?
我用了 公共CName + worker路由
方式,貌似实现了同样效果
Cloudflare上托管了
a.us.kg
Serv00上托管c.us.kg
以下是具体步骤:
部署一简单的 worker
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request))
})
// 处理请求
async function handleRequest(request) {
const url = new URL(request.url)
// 处理转发到你的服务器c.us.kg 我用的serv00就直接使用`http`了
url.host = 'c.us.kg'
url.port = '你的API端口'
url.protocol = 'http'
const init = {
method: request.method,
headers: request.headers
}
if (request.method !== 'GET') {
init.body = await request.text()
}
// 发起请求
const response = await fetch(url.toString(), init)
// 返回响应
return response
}
配置 worker 路由
注意是 路由
api.a.us.kg/*
配置worker路由 → 公共CName
api.a.us.kg
--CName–> 优选IP提供者(不开小黄云) 如cdn.cloudflare.182682.xyz
win端可以使用
nslookup 优选IP提供者
查看分配本次请求分配ip
使用worker+cname尽量不要使用含有大量ip是1.1.1.x
、1.0.0.x
的优选服务,当分配到这两个段的IP,会因为cloudflare校验导致Error 1034 Edge IP ...
客户端访问执行顺序:
api.a.us.kg → cdn.cloudflare.182682.xyz → Worker路由API服务器
效果
欢迎佬友指出错误和讨论