Cloudflare Workers 部署跨域代理服务
项目源码:https://github.com/netnr/workers
使用文档:https://developers.cloudflare.com/workers/quickstart/
安装环境
npm install -g @cloudflare/wrangler
如果出现错误:Error: EACCES: permission denied, mkdir
请执行以下命令,解决方法链接:https://github.com/npm/npm/issues/17268
npm install -g @cloudflare/wrangler --unsafe-perm=true --allow-root
创建项目
- 基于模版
wrangler generate test https://github.com/cloudflare/worker-template
- 现有项目,初始化
wrangler init
编写脚本
index.js
执行的脚本,参考示例
wrangler.toml
配置参数
account_id = ""
name = "cors"
type = "webpack"
route = "cors.eu.org/*"
workers_dev = false
zone_id = ""
account_id
、zone_id
你在cloudflare托管的域名信息
使用 workers.dev 子域名,即默认的:
route = ""
workers_dev = true
使用自定义域名配置如下:
route = "cors.eu.org/*"
workers_dev = false
绑定多个域名,把 route 换成 routes 且为数组
routes = ["example.com/foo/*", "example.com/bar/*"]
配置全局变量
wrangler config --api-key
配置 email、api key ,查看记录 cat ~/.wrangler/config/default.toml
构建
wrangler build
发布
wrangler publish
访问
xxx.workers.dev
,是你的子域名,xxx
是你的账号
test.xxx.workers.dev
就是当前发布的访问链接
如果使用自定义域名,需要配置一个域名绑定CNAME:xxx.workers.dev
,并开启CDN,即点亮黄云图标
免费套餐额度
- 每天 10 万个请求(UTC + 0)
- 每 10 分钟 1000 个请求
- 每个请求最多10ms CPU时间
- 首次请求后的最低延迟