都是非常的是: true部署静态服务
使用works提供的KV作为数据库
使用cloudfare缓存html来降低KV的读写
所有的html页面均为缓存,可以达到静态博客的速度
唯一瓶颈是workers的日访问量是10万(免费)
1G的存储空间
worker里边存放的是js
那么静态页面html放哪里?——CloudFlare有一个模块Page专门放置静态页面(可以连接GitHub也可以自己上传)
其实CLoudFlare就是worker和Page构成了两大核心
Page的使用就更简单了,把静态页面等相关代码打包上传即可,当然也可以链接GitHub存储库,实现简单的CI/CD
利用CLoudFlare的CDN实现VPN的作用
首先使用别人已经搭建好的worker代码直接拿来使用搭建
建议使用自定义域更稳定的访问到worker
然后配置反代域名或者反代ip,注意端口(自己优选反代ip替换)
常用反代cf域名
edgetunnel.anycast.eu.org
cdn-all.xn--b6gac.eu.org
cdn.xn--b6gac.eu.org
cdn-b100.xn--b6gac.eu.org
cdn.anycast.eu.org
cdn-all.xijingping.link
另外,只是单纯上网的话,啊里的反代就挺好:香港、日本
const proxyIPs = ['achk.cloudflarest.link','jp.cloudflarest.link'];
能解锁GPT等网站的优质IP(荷兰)
const proxyIPs = ['146.70.175.116','146.70.175.112','146.70.175.101','146.70.175.111','146.70.175.104'];
ip地址查询 https://ipdata.co/ https://ip.gs/
fofa官网 https://fofa.info/
筛选语句:
server=="cloudflare" && port=="80" && country=="NL" && city=="Amsterdam"
补充:脚本中使用政府网站来伪装对非法路径请求的回应
const hostnames = ['www.fmprc.gov.cn', 'www.xuexi.cn', 'www.gov.cn', 'mail.gov.cn', 'www.mofcom.gov.cn', 'www.gfbzb.gov.cn', 'www.miit.gov.cn', 'www.12377.cn'];
建议改一下比如:
const hostnames = ['ipdata.co'];
关于优选cdn-ip和优选反代ip:
cdn ip 是cloudflare的边缘节点ip,反代ip是反代了cdn节点的ip
填写在v2rayN的ip和使用的端口是从本地测试能连通CloudFlare网络服务的优选反代ip测试
填写在worker脚本中的ip则是从谷歌测试【使用了CLoudFlare体系的网站,cdn-ip(能不能解锁gpt看的还是worker中的cdn-ip)

小结:只要worker中的ip段能够访问解锁就可以了外面填的反代ip决定自己常规的ip,也是连接到CloudFlare边缘节点的跳板
(正常情况下我们一般很难直连CloudFlare网络,我们必选优选ip访问,之后再通过指定cdn-ip边缘访问节点去访问我们想要解锁的网站)
使用CloudFlare,它的边缘ip一般是就近分配,我们需要优选让我们畅通它的服务和指定ip区域
他有一些ip段,对应有不同的地区编码
地区编码: 不太准,只能说大范围都是
132203——北美、香港、新加坡
31898——北美、欧洲、韩国等
45102——亚洲(日本、香港、新加坡)
亚洲的基本都能正常,但它的地区会被open-ai拉黑
如何优选:
一、如果获取CF中转IP(即反代IP)
2、电报机器人:@cf_push
3、合并多个txt文档技巧:新建txt文件,输入type *.txt>>all.txt,重命名格式为.bat后,运行。自动合并生成。
5、在线批量IP地理位置查找工具:https://reallyfreegeoip.org/bulk
6、利用“CloudflareSpeedTest”工具来测速(参数见项目地址):https://github.com/XIU2/CloudflareSpeedTest
7、在该软件当时文件栏上输出:cmd,回车键
8.1、直接软件测:CloudflareST.exe -tll 40 -tl 200 -f 文件名.txt(下载速度测不了)
8.2、有测速地址:CloudflareST.exe -url https://down.heleguo.top/download/300MB.zip -tl 200 -sl 5 -tlr 0.2 -f 文件名.txt
表示启动cloudflare工具,利用https://down.heleguo.top/download/300MB.zip测速地址测速。tll延迟下限是40,tl延迟上限是200,sl最低速度5M,tlr丢包率小于0.2,-f表示针对文件名.txt文件内IP测速。
二、如何获取CF的CDN IP
4、better-cloudflare-ip(本地优选)
5、CloudflareSpeedTest(本地优选)
打开fofa网站搜索:server="cloudflare" && country="US" && city="Chicago" && port="443"
意思是筛选CF的CDN IP,国家是美国,地区是芝加哥,端口443
7、利用“CloudflareSpeedTest”工具来测速
三、查当前IP地址及测速
1、查IP:https://ip.gs/
2、查IP纯净度:https://scamalytics.com/
附:有方法限定自己的优选域名防止乱跳
就是通过CF的CDN和指明网站,去挖他们的纯净ip来拿来当做我们的反代ip
纯净度高就越有可能解锁特殊网站
参考:暴力,CF优先IP,解锁CHATGPT和奈飞 (youtube.com)
IP在线PING
托管CF CDN的网站
dogechain.info
interactive.kohls.com
根据需要后期更新...
查IP纯度
使用Cloudflare的Workers实现简单的反向代理是相对容易的。Workers提供了JavaScript代码的执行环境,您可以使用它来修改传入的请求并将其转发到目标网址。上述提供的代码示例演示了如何捕获传入请求事件,修改请求的URL,并使用fetch函数将修改后的请求发送到目标网址。通过配置Cloudflare的路由,您可以将特定的源路径映射到相应的Worker,从而实现反向代理的功能。
然而,需要注意的是,这只是一个简单的示例,适合于基本的反向代理需求。在实际应用中,还可能需要处理更多的情况,如处理各种HTTP方法、处理请求和响应的头部、处理错误等。此外,如果目标网址使用HTTPS,您可能需要在Worker中执行SSL/TLS终止,以确保安全连接。
如果您的需求更加复杂或有特定的安全需求,可能需要编写更复杂的代码来处理各种场景。Cloudflare的Workers文档提供了更详细的信息和示例,供您参考和扩展。
要使用Cloudflare的Workers来实现将访问https://fd.cy.com/dasd转发到www.Abc.com/dasd,您可以按照以下步骤操作:
登录到Cloudflare账户并打开Cloudflare Workers控制台。
创建一个新的Worker:点击"Create a Worker"(创建一个Worker)按钮。
输入Worker代码:在Worker编辑器中,输入以下代码:
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request))
})
async function handleRequest(request) {
const url = new URL(request.url)
// 修改目标URL的主机名和路径
url.hostname = 'www.Abc.com'
url.pathname = '/dasd'
// 构造新的请求
const modifiedRequest = new Request(url.toString(), {
method: request.method,
headers: request.headers,
body: request.body,
redirect: 'manual' // 禁用自动重定向
})
// 发起新的请求并返回响应
const response = await fetch(modifiedRequest)
return response
}
部署Worker:点击"Save and Deploy"(保存并部署)按钮,将Worker部署到Cloudflare的全球边缘网络。
配置路由:在Cloudflare Workers控制台的左侧导航栏,选择"Routes"(路由)选项卡。点击"Add Route"(添加路由)按钮。
配置源路径和目标Worker:在路由配置中,输入源路径为https://fd.cy.com/*,并选择刚刚创建的Worker作为目标。
保存路由配置:点击"Save"(保存)按钮,使路由配置生效。
案例扩展
我们使用response.headers.get('Content-Type')获取原始响应的内容类型,并根据内容类型来选择相应的处理逻辑。
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request))
})
async function handleRequest(request) {
const url = new URL(request.url)
// 修改目标URL的主机名和路径
url.hostname = 'www.Abc.com'
url.pathname = url.pathname.substring(1) // 移除斜杠
// 构造新的请求
const modifiedRequest = new Request(url.toString(), {
method: request.method,
headers: request.headers,
body: request.body,
redirect: 'manual' // 禁用自动重定向
})
// 发起新的请求并返回响应
const response = await fetch(modifiedRequest)
// 检查原始请求的内容类型
const contentType = response.headers.get('Content-Type')
// 根据内容类型进行适当的处理
if (contentType && contentType.startsWith('video/')) {
// 如果是视频内容,可以直接返回响应
return response
} else {
// 对于其他内容类型,可以根据需求进行处理
const body = await response.text()
return new Response(body, response)
}
}
在上述代码中,我们使用contentType.startsWith('video/')来判断内容类型是否以video/开头,以确定是否为视频内容。如果是视频内容,直接返回原始响应;如果不是视频内容,则将原始响应的主体作为文本进行返回。
这样修改后的代码将根据请求的内容类型自动进行反向代理,只有当内容类型为视频时才返回原始响应,其他内容类型将被作为文本返回。
在路由规则中含有多种规则,其中就包括重定向规则,需要注意的是worker里边有自己的路由功能,所以如果是对worker路由操作将更加简单
但是注意了,重定向路由支持多种匹配规则,但是正则表达式匹配是会员付费专项

可选方案很多,下面是一种参考:
