Cloudflare的使用

cloudflare安全防御 从入门到进阶!有效防御80%的CC攻击!WAF规则讲解!提升网站安全!


https://www.bilibili.com/video/BV1eJ4m157en/



5秒盾–阻挡恶意访问


JS 质询 — 开启了这个, 一些机器人流量会被拦截

国外网络较好,叫1秒盾, 国内网络差,延长到5s,叫 5秒盾


Cloudflare WAF 操作的说明

JS质询 (JavaScript Challenge):这是 Cloudflare WAF 的一种独特质询类型。这种质询会要求请求者的浏览器执行一段 JavaScript 代码来证明其是一个真正的浏览器而非自动化工具。这有助于阻止某些类型的自动化攻击。
【来源:https://www.bujj.org/index.php/2023/07/09/538/,转载请注明】

Cloudflare“托管质询”“JS质询”到底是什么

Cloudflare五秒盾、JS质询、托管质询以及交互式质询的区别

Cloudflare全球边缘节点分布 数据中心列表 共311个

CloudFlare Web应用防火墙规则,一键阻挡恶意访问

也可以加很多其他的挑战,可以根据ip,国家,ASN来限制

关于ASN: https://vps123.top/china-asn-bgp-rank.html



worker 梯子


参考 使用Cloudflare-Workers


20240820, 现在前端的saas用这东西,因为能全球部署&CDN

cloudflare worker 有何作用

Cloudflare Workers 是一种边缘计算平台,具有以下主要作用:

  1. 边缘计算: 允许代码在离用户最近的 Cloudflare 数据中心运行,减少延迟。

  2. 自定义请求处理: 可以拦截、修改和重定向 HTTP 请求和响应。

  3. 无服务器执行: 无需管理服务器,代码在需要时自动扩展。

  4. 全球分布: 在 Cloudflare 的全球网络上运行,提供更好的性能和可靠性。

  5. 安全性增强: 可以实现自定义安全逻辑,如请求过滤、身份验证等。

  6. 动态内容生成: 可以动态生成内容,而不仅仅是提供静态文件。

  7. API 集成: 可以作为不同 API 之间的中间层,进行数据转换和聚合。

  8. A/B 测试: 可以轻松实现流量分流和 A/B 测试。

  9. 性能优化: 可以进行图像处理、缓存控制等性能优化任务。

  10. 成本效益: 按实际使用量计费,适合各种规模的应用。

这些功能使 Cloudflare Workers 成为构建快速、可扩展和安全的 Web 应用程序的强大工具。您是否想了解更多关于其中某个具体方面的信息?

一个账号最多可以创建多少个worker?

Cloudflare 对于单个账户可以创建的 Workers 数量有一些限制,但这些限制会根据您的账户类型而有所不同:

  1. 免费账户(Free plan):

    • 通常可以创建最多 1 个 Worker。
  2. 付费账户(Pro, Business, Enterprise plans):

    • 可以创建多个 Workers,具体数量限制会更高。
    • Pro 和 Business 计划通常可以创建 30 个以上的 Workers。
    • Enterprise 计划可能会有更高的限制,或者可以根据需求进行自定义。
  3. Workers Unlimited:

    • 这是一个附加选项,允许您创建无限数量的 Workers。

需要注意的是,Cloudflare 的具体限制可能会随时间变化。为了获取最准确和最新的信息,我建议您:

  1. 查看您的 Cloudflare 账户仪表板,那里通常会显示您当前计划的具体限制。
  2. 直接咨询 Cloudflare 的客户支持,他们可以提供最新的准确信息。
  3. 检查 Cloudflare 的官方文档,那里通常会列出最新的限制和规格。

如果您需要创建大量的 Workers,可能需要考虑升级您的计划或添加 Workers Unlimited 选项。您是否需要了解更多关于 Workers 的使用策略或最佳实践?

worker对外的ip是固定的吗? worker相当于阿里云的什么服务?

关于您的问题,让我逐一回答:

  1. Worker 对外的 IP 是固定的吗?

Cloudflare Workers 对外的 IP 通常不是固定的。原因如下:

  • 分布式特性:Workers 运行在 Cloudflare 的全球边缘网络上,请求会被路由到最近的数据中心。
  • 动态分配:每次执行 Worker 时,可能会在不同的服务器或 IP 上运行。
  • 网络优化:Cloudflare 会根据网络状况和负载进行动态调整。

这意味着从外部看,Worker 的出口 IP 可能会经常变化。如果您需要固定 IP,可能需要考虑其他解决方案或联系 Cloudflare 寻求企业级支持。

  1. Worker 相当于阿里云的什么服务?

Cloudflare Workers 在阿里云上没有完全对等的服务,但最接近的可能是以下几种服务的组合:

  • 函数计算(Function Compute):这是阿里云的无服务器计算平台,类似于 Workers 的运行环境。
  • 边缘节点服务(Edge Node Service):提供全球分布的边缘计算能力。
  • CDN:虽然 Workers 不仅仅是 CDN,但它们都提供内容分发和边缘计算能力。
  • API 网关:可以用于请求路由和处理,类似于 Workers 的一些功能。

Cloudflare Workers 集成了这些功能,提供了一个统一的平台来处理边缘计算、内容分发、请求处理等任务。阿里云通常需要组合多个服务来实现类似的功能集。

需要注意的是,虽然这些服务在概念上相似,但在具体实现、使用方式和性能特征上可能有显著差异。选择哪种服务取决于您的具体需求、技术栈和预算考虑。

您是否需要更详细地了解 Cloudflare Workers 和阿里云服务之间的某些具体差异?

worker支持什么语言?

Cloudflare Workers 主要支持 JavaScript 和其相关的技术栈。具体来说,支持的语言和技术包括:

  1. JavaScript:

    • 这是 Workers 的主要编程语言。
    • 支持 ECMAScript 2020 (ES2020) 标准。
  2. TypeScript:

    • 可以使用 TypeScript 编写 Worker,然后编译为 JavaScript。
  3. WebAssembly (Wasm):

    • 允许使用其他语言编写代码,然后编译为 WebAssembly。
    • 通过这种方式,理论上可以支持如 C、C++、Rust 等语言。
  4. 特定的框架和库:

    • Workers Sites:用于静态网站托管。
    • Cloudflare’s Workers KV:用于键值存储。
    • Durable Objects:用于有状态的应用程序。
  5. API 和 Web 标准:

    • 支持大多数现代 Web API,如 Fetch、URL、TextEncoder 等。
    • 支持 Service Worker API 的子集。
  6. 特定的构建工具和框架:

    • Wrangler:Cloudflare 的官方 CLI 工具。
    • 支持使用 Webpack、Rollup 等构建工具。

需要注意的是,虽然主要支持 JavaScript,但通过 WebAssembly,理论上可以使用多种语言。然而,直接使用 JavaScript 或 TypeScript 通常是最简单和最受支持的方法。

您是否对使用某种特定语言或技术在 Workers 上开发感兴趣?或者您想了解更多关于 Workers 的开发环境和工具链吗?

我想通过worker,给我的github的一个仓库更新提交,记录每天市值排名前30的公司的情况,分布在每天6点到18点之间提交,要如何操作?github是否会封我的账号?

这是一个有趣的项目想法。让我为您概述一下如何使用 Cloudflare Worker 来实现这个功能,以及一些需要注意的事项:

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
async function handleSchedule(event) {
// Fetch top 30 companies by market cap
const topCompanies = await fetchTopCompanies();

// Generate commit content
const commitContent = generateCommitContent(topCompanies);

// Update GitHub repository
await updateGitHubRepo(commitContent);
}

async function fetchTopCompanies() {
// Implementation to fetch top 30 companies by market cap
// You might want to use a financial API here
}

function generateCommitContent(companies) {
// Generate formatted content for the commit
}

async function updateGitHubRepo(content) {
const apiUrl = 'https://api.github.com/repos/YOUR_USERNAME/YOUR_REPO/contents/daily_update.md';
const response = await fetch(apiUrl, {
method: 'PUT',
headers: {
'Authorization': 'token YOUR_GITHUB_TOKEN',
'Content-Type': 'application/json',
},
body: JSON.stringify({
message: `Daily update ${new Date().toISOString()}`,
content: btoa(content),
sha: 'CURRENT_FILE_SHA' // You need to fetch this first if the file exists
})
});

if (!response.ok) {
throw new Error(`GitHub API request failed: ${response.statusText}`);
}
}

addEventListener('scheduled', event => {
event.waitUntil(handleSchedule(event));
});

// Trigger the update at a random time between 6:00 and 18:00
const triggerTime = 6 * 60 + Math.floor(Math.random() * 12 * 60); // minutes since midnight
const cronSchedule = `${triggerTime % 60} ${Math.floor(triggerTime / 60)} * * *`;

这个脚本提供了一个基本框架来实现您的需求。以下是一些关键点和建议:

  1. 实现细节:

    • 您需要实现 fetchTopCompanies 函数来获取市值排名前30的公司数据。这可能需要使用一个财经 API。
    • generateCommitContent 函数应该格式化这些数据以便于阅读和分析。
  2. GitHub 身份验证:

    • 使用 GitHub Personal Access Token 进行身份验证。确保token具有适当的权限。
    • 不要直接在代码中存储token,使用 Cloudflare Workers 的环境变量或秘密管理功能。
  3. 调度:

    • 使用 Cloudflare Workers 的 cron 触发器来安排每日更新。
    • 脚本中的 cronSchedule 变量设置了一个随机时间(在6:00到18:00之间)。
  4. 关于 GitHub 账户安全:

    • GitHub 通常不会因为这种自动化操作而封禁账户,只要您遵守他们的服务条款。
    • 然而,为了安全起见:
      1. 使用合理的更新频率(每天一次是可以的)。
      2. 确保您的commits有意义且不是垃圾信息。
      3. 考虑在仓库描述中说明这是自动化更新。
  5. 错误处理:

    • 添加适当的错误处理和日志记录,以便于调试和监控。
  6. 数据源:

    • 确保您有权限使用和分享您获取的公司数据。
  7. 优化:

    • 考虑缓存一些数据以减少 API 调用,特别是如果您使用的是有请求限制的财经 API。

要部署这个 Worker,您需要:

  1. 在 Cloudflare 控制台创建一个新的 Worker。
  2. 复制并修改上面的代码以适应您的需求。
  3. 设置必要的环境变量(如 GitHub token)。
  4. 设置 cron 触发器。

这个项目是一个有趣的自动化数据收集和版本控制的例子。如果您需要更多帮助或者对某些具体部分有疑问,请随时告诉我。

npx wrangler pages deploy dist-cf/ –project-name=taskonsaas-test –branch=main 什么意思?

这行命令使用 Cloudflare Workers 的 wrangler 工具将一个名为 dist-cf 的文件夹部署到 Cloudflare Pages 上。让我们来分解一下:

  • npx: 这是一个 npm 包执行器,用于运行项目中没有全局安装的包。
  • wrangler: Cloudflare Workers 的官方命令行工具,用于管理 Workers 和 Pages 项目。
  • pages deploy: wrangler 命令,用于将一个文件夹部署到 Cloudflare Pages。
  • dist-cf: 要部署的文件夹路径。这个文件夹通常包含你构建好的网站代码。
  • --project-name=taskonsaas-test: 指定 Cloudflare Pages 项目的名称,在这个例子中是 “taskonsaas-test”。
  • --branch=main: 指定要部署的分支,在这个例子中是 “main” 分支。

简而言之,这行命令告诉 wrangler 工具将 dist-cf 文件夹中的内容部署到名为 “taskonsaas-test” 的 Cloudflare Pages 项目的 “main” 分支。

注意:

  • dist-cf 文件夹应该包含你网站的构建产物,例如 HTML、CSS、JavaScript 文件。
  • 你需要在 Cloudflare Workers 帐户中创建一个名为 “taskonsaas-test” 的 Pages 项目。
  • 你需要在你的项目根目录中创建一个名为 wrangler.toml 的配置文件,其中包含有关你的 Cloudflare Pages 项目的信息。

希望这能帮助你理解这行命令的作用!

域名邮箱



https://www.bilibili.com/video/BV1bu4m1c7p4



Web3


https://www.cloudflare-cn.com/application-services/products/web3/

https://baijiahao.baidu.com/s?id=1782984310713575420

https://developers.cloudflare.com/web3/ethereum-gateway/concepts/ethereum/



要收费..虽然并不贵…

免费的也够用,但必须要绑定信用卡~



最后用了这两个有免费额度的~

https://blastapi.io/dashboard/project/8c274e4b-b12a-4353-947b-d584ab8382d0/bnb-chain?apiType=CORE

https://blastapi.io/dashboard/plan

免费额度每个与1200万次调用

https://dashboard.nodereal.io/api-key/03e80ae7-bb56-42fe-94d7-399f5c00b5df

第一个是用小狐狸钱包登录的

第二个是用discord登录的~



根据网站上提供的信息,Blast API 是一个提供分散式 Web3 基础设施的服务平台。它的主要特点包括:

  1. 提供高性能和低延迟的区块链 RPC 基础设施服务。它利用了分散的第三方节点网络,能够提供可靠、高效的中间层服务。

  2. 支持多种区块链网络,不仅限于以太坊生态,持续扩展支持的链。

  3. 提供即时可用的 API 访问,用户无需自行搭建节点即可使用。

  4. 拥有友好的仪表板和用户体验,支持稳定币付款等便利功能。

  5. 提供灵活的定价方案,满足不同项目的需求。

  6. 提供 24/7 的工程支持,保证服务的可靠性。

总的来说,Blast API 旨在为 Web3 开发者和基础设施公司提供高性能、可靠的分布式 RPC 基础设施服务,帮助他们更快地构建和部署应用程序。它是一个专注于提升 Web3 应用基础设施的服务平台。



根据 NodeReal 的官网Dashboard页面,可以看到NodeReal是一个提供区块链基础设施服务的平台。它的主要功能如下:

  1. 提供高可靠性和高性能的区块链节点基础设施服务。用户可以直接使用NodeReal的节点进行区块链的读写操作,而无需自己搭建和维护节点。

  2. 支持多种主流区块链网络,包括以太坊、BNB Chain、Polygon、Avalanche等。用户可以在统一的仪表板上管理对接的各种链。

  3. 提供仪表板界面,用户可以在仪表板上监控节点的运行状态、API调用情况等关键指标。

  4. 支持REST API和WebSocket API,方便开发者集成使用。

  5. 提供灵活的定价方案,满足不同规模项目的需求。

  6. 提供全天候的工程支持,保证服务的可靠性。

总的来说,NodeReal 是一站式的区块链节点基础设施服务平台,面向区块链开发者和企业提供稳定、高效的区块链访问服务,帮助他们专注于应用程序的开发和部署,而无需自己搭建和管理节点基础设施。


20240911 再次使用cf的web3

我在cloudflare上面用web3功能订阅了eth的网关,地址为shuang.52it.net, 如何测试其可用性?

要测试您在 Cloudflare 上订阅的 Web3 功能的可用性,可以按照以下步骤进行:

  1. 使用 RPC 客户端

    • 使用像 curl 或 Postman 这样的工具,向您的网关地址发送请求。

    • 示例请求(使用 curl):

      1
      2
      3
      curl --location 'https://shuang.52it.net/v1/mainnet' \
      --header 'Content-Type: application/json' \
      --data '{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["0x2244", true],"id":1}'
    • 如果返回的结果包含当前区块号,说明网关可用。

  2. 使用 Web3.js

    • 如果您熟悉 JavaScript,可以使用 Web3.js 库进行测试。
    • 示例代码:
      1
      2
      3
      4
      5
      6
      const Web3 = require('web3');
      const web3 = new Web3('https://shuang.52it.net');

      web3.eth.getBlockNumber()
      .then(console.log)
      .catch(console.error);
  3. 检查响应时间和状态码

    • 在发送请求时,注意观察响应时间和 HTTP 状态码。如果状态码为 200,且响应时间合理,说明网关正常工作。
  4. 使用区块链浏览器

    • 通过区块链浏览器(如 Etherscan)手动验证一些交易或区块,以确保网关返回的数据是最新的。
  5. 监控工具

    • 可以使用监控工具(如 Grafana、Prometheus)定期检查网关的响应情况,确保其持续可用。

通过这些步骤,您可以有效测试和验证您的 Web3 网关的可用性。



目前只有eth的ipfs,我们只用了eth. 主网和测试网后面的路径不一样: 文档: https://developers.cloudflare.com/web3/ethereum-gateway/reference/supported-networks/

https://developers.cloudflare.com/web3/how-to/use-ethereum-gateway/




Cloudflare One (内网穿透等)


详细操作, 见 内网穿透工具

Cloudflare One 是 Cloudflare 提供的一种集成安全和网络服务的平台,旨在为企业提供全面的网络安全解决方案。它结合了多种功能,主要包括:

  1. 安全访问:通过 Zero Trust 安全模型,允许用户安全访问应用程序和数据,而不依赖传统的 VPN。

  2. 应用程序保护:提供对内部和外部应用程序的保护,防止 DDoS 攻击、恶意软件和其他网络威胁。

  3. 网络优化:通过 Cloudflare 的全球网络,提供更快速和可靠的连接,提高应用程序的性能。

  4. 数据保护:确保敏感数据的安全传输和存储,符合合规要求。

  5. 可见性和分析:提供详细的日志和分析,帮助企业监控网络活动和安全事件。

Cloudflare One 通过集成这些功能,帮助企业简化 IT 管理,同时增强安全性和用户体验。

https://github.com/cloudflare/cloudflared/releases




r2对象存储


https://www.bilibili.com/video/BV1Su411G7Qt/?

每个人10G空间,每个人每月100万次调用




cloudflare的Spectrum是什么?


Cloudflare Spectrum 是 Cloudflare 提供的一项服务,旨在保护和加速非 HTTP/HTTPS 流量的应用程序。它主要用于保护基于 TCP 和 UDP 协议的应用,例如:

  • 邮件服务(SMTP/IMAP)
  • 游戏服务器
  • 远程桌面(RDP)
  • SSH
  • 数据库(MySQL、PostgreSQL 等)

通常,企业会为这些服务部署防火墙和 DDoS 防护设备,但这些解决方案可能复杂且昂贵。Cloudflare Spectrum 通过其全球网络为这些非 HTTP 协议的应用提供 DDoS 防护、加速和负载均衡功能。

主要功能包括:

  1. DDoS 防护

    • Cloudflare 的全球 Anycast 网络可以自动检测和缓解大规模 DDoS 攻击,确保应用在攻击中保持可用。
  2. 性能优化

    • Spectrum 可以减少网络延迟并提高非 HTTP 流量的传输速度。
  3. TCP/UDP 协议支持

    • Spectrum 支持所有 TCP 和部分 UDP 应用协议,不仅限于 Web 流量,还包括游戏、VoIP、SSH、RDP 等各种类型的流量。
  4. 全球负载均衡

    • Cloudflare 的全球网络通过智能路由技术,可以将流量路由到最优的服务器,确保低延迟和高可靠性。
  5. SSL/TLS 加密

    • Spectrum 还可以为任何 TCP 流量提供端到端的加密,即使原始服务本身不支持 SSL/TLS。
  6. 高可用性

    • Spectrum 依托于 Cloudflare 的全球网络,提供了高可用性和自动故障切换功能。

使用场景:

  • 游戏行业:加速和保护游戏服务,防止 DDoS 攻击,优化玩家体验。
  • 企业服务:保护和加速远程桌面(RDP)、SSH 和数据库访问,确保内部服务的稳定性和安全性。
  • 电子邮件服务:保护电子邮件服务器免受攻击,并确保邮件传输的可靠性和安全性。

通过 Spectrum,Cloudflare 将其强大的网络和安全能力扩展到了更多种类的流量和应用,使企业可以更轻松地保护和加速关键的业务服务。



流量序列


cloudflare的Snippets是什么?


Cloudflare 的 Snippets 是一项功能,允许开发者在 Cloudflare 的边缘网络上执行自定义的 JavaScript 代码片段。这些代码片段可以在请求到达服务器之前(即在边缘)对流量进行修改、分析或增强,从而定制响应行为、优化性能或实现特定的业务逻辑。

Snippets 的主要功能和用途包括:

  1. 自定义请求处理

    • 使用 JavaScript 来修改 HTTP 请求或响应。例如,你可以根据用户的地理位置、设备类型或其他请求头信息来动态调整页面内容。
  2. A/B 测试

    • 通过 Snippets,可以在 Cloudflare 的边缘处理 A/B 测试逻辑,将一部分用户定向到不同版本的页面,而无需修改后端服务器代码。
  3. 安全和访问控制

    • 你可以使用 Snippets 来编写自定义的安全策略,比如基于 IP 地址、用户代理等条件阻止或允许访问。
  4. 性能优化

    • Snippets 可以用于优化请求和响应,减少页面加载时间。例如,动态压缩资源、修改缓存策略、或根据条件重写 URL 等。
  5. 个性化内容

    • 根据用户的属性(如浏览器类型、地理位置等),在边缘动态生成或修改响应,提供个性化体验。
  6. 日志和监控

    • 你可以在 Snippets 中插入自定义日志代码,用于跟踪请求流量和用户行为,帮助调试或监控应用。

与其他 Cloudflare 产品的关系:

  • Cloudflare Workers:Snippets 功能通常与 Cloudflare Workers 搭配使用。Workers 是 Cloudflare 的无服务器计算平台,允许你编写和部署 JavaScript 代码以处理 HTTP 请求。Snippets 本质上是较小的 JavaScript 代码片段,可以作为 Workers 中的一部分运行。

  • Page RulesTransform Rules:Snippets 可以与 Cloudflare 的其他规则系统一起使用,帮助开发者实现复杂的业务逻辑,比如 URL 重写、缓存策略调整等。

举例:Snippets 的应用场景

  1. URL 重写

    • 拦截请求并重写 URL,例如将旧版本的 API 请求重定向到新版本。
  2. 自定义页面重定向

    • 根据用户的地理位置或设备类型,自动将用户重定向到本地化的站点或适配的移动页面。
  3. 动态注入内容

    • 在进入最终页面之前,动态向响应中插入脚本或样式表,帮助实现更好的用户体验。
  4. 安全增强

    • 在边缘添加额外的安全检查,比如验证请求头中的自定义令牌,或者阻止特定类型的恶意请求。

总结

Cloudflare Snippets 为开发者提供了在边缘网络级别上编写自定义 JavaScript 代码的能力,使得请求在到达服务器之前就可以被修改或增强。这项功能强大而灵活,适用于各种场景,包括性能优化、安全控制、个性化内容等。



Cloudflare Zaraz是什么?有何作用?



Cloudflare Zaraz 是 Cloudflare 提供的一项服务,旨在通过在边缘加载和管理第三方工具来优化网站性能和安全性。Zaraz 允许网站开发者以更高效的方式加载和运行各种第三方脚本和工具(如分析工具、广告追踪、社交媒体插件等),从而减少客户端资源占用,提升页面加载速度,同时提高数据隐私和安全性。

Cloudflare Zaraz 的主要功能和作用:

  1. 提升性能

    • 第三方脚本管理:通常,网站中的第三方脚本会直接在用户浏览器中运行,可能会导致页面加载速度变慢。Zaraz 通过 Cloudflare 的边缘网络加载和执行这些脚本,减少了浏览器的负担,从而加快页面加载速度。
    • 减少阻塞资源:Zaraz 在边缘处理第三方脚本,避免了脚本在浏览器中阻塞页面的渲染,降低了加载时间和延迟问题。
  2. 提高安全性

    • 隔离第三方脚本:Zaraz 将第三方脚本与用户的浏览器隔离,在 Cloudflare 的边缘网络上执行代码,减少了潜在的安全漏洞和攻击风险,防止恶意脚本影响用户体验或网站安全。
    • 数据隐私保护:Zaraz 可以限制第三方工具访问敏感用户数据,确保用户隐私得到更好的保护。开发者可以配置哪些数据可以发送给第三方应用,避免过多的数据泄露。
  3. 简化第三方工具集成

    • 集中管理和监控:Zaraz 提供了一个统一的界面,允许开发者管理和配置各种第三方工具(如 Google Analytics、Facebook Pixel、广告平台等)。开发者不需要手动添加每个工具的脚本代码,而是可以通过 Zaraz 的控制台来管理这些工具,减少了集成的复杂性。
    • 无代码配置:通过 Zaraz,许多常见的第三方工具可以通过无代码的方式进行配置和管理,帮助开发者快速部署和修改这些工具的设置。
  4. 兼容性和可扩展性

    • Zaraz 支持各种第三方工具,包括常见的分析、广告、性能监控和社交媒体插件。它可以替代传统的客户端集成方式,无需手动插入复杂的 JavaScript 代码。
    • Zaraz 允许开发者自定义和扩展功能。例如,开发者可以添加自定义的跟踪事件或修改默认的工具行为,以适应独特的业务需求。

Zaraz 的工作原理:

  1. 请求拦截:当用户访问网站时,Zaraz 会拦截请求并判断需要加载哪些第三方工具。

  2. 边缘执行:Zaraz 在 Cloudflare 的边缘网络上加载和执行这些第三方工具的代码,而不是在用户的浏览器中执行。这种方式减少了浏览器的负担,并加快了页面的加载速度。

  3. 数据控制:Zaraz 帮助开发者控制哪些数据可以发送到第三方工具,并确保数据隐私得到保护。例如,它可以过滤和处理用户的敏感信息,避免无意中向第三方泄露数据。

  4. 跟踪和分析:Zaraz 提供了跟踪和分析功能,帮助开发者了解和优化第三方工具的使用情况。

Zaraz 的使用场景:

  1. 网站性能优化

    • 如果你的站点依赖多个第三方工具(如广告、分析、聊天插件等),Zaraz 可以在边缘管理这些工具,减少它们对页面加载速度的负面影响。
  2. 隐私保护和合规性

    • Zaraz 允许你精细控制数据发送到第三方工具的方式,帮助你遵守 GDPR、CCPA 等数据隐私法规,确保用户数据得到妥善保护。
  3. 简化维护和管理

    • 使用 Zaraz,开发者无需手动管理众多第三方脚本,可以通过统一的界面管理所有集成的工具,从而减少维护工作量。

与其他工具的比较:

  • 传统的第三方脚本加载:通常情况下,第三方脚本直接加载到浏览器中,可能会拖慢页面加载速度,增加安全风险。Zaraz 通过在边缘处理这些脚本,解决了这些问题。
  • Tag Manager(如 Google Tag Manager):虽然 Google Tag Manager 也可以管理第三方脚本,但它仍然是在浏览器中执行脚本,可能会影响页面性能。而 Zaraz 在边缘执行脚本,具有更好的性能和安全性。

总结

Cloudflare Zaraz 提供了一个快速、安全、高效的方式来管理和执行第三方工具和脚本。它通过在 Cloudflare 的边缘网络上执行这些工具,减少了对浏览器的依赖,提高了网站性能,同时增强了数据隐私保护和安全性。对于依赖多个第三方工具的站点,Zaraz 是一个极具价值的解决方案,可以简化管理,提升用户体验。




技术文章:

https://blog.cloudflare.com/unimog-cloudflares-edge-load-balancer/

https://blog.cloudflare.com/introducing-quicksilver-configuration-distribution-at-internet-scale/

https://blog.cloudflare.com/zh-cn/cloud-computing-without-containers/