cloudflare安全防御 从入门到进阶!有效防御80%的CC攻击!WAF规则讲解!提升网站安全!
https://www.bilibili.com/video/BV1eJ4m157en/
5秒盾–阻挡恶意访问
JS 质询 — 开启了这个, 一些机器人流量会被拦截
国外网络较好,叫1秒盾, 国内网络差,延长到5s,叫 5秒盾
JS质询 (JavaScript Challenge):这是 Cloudflare WAF 的一种独特质询类型。这种质询会要求请求者的浏览器执行一段 JavaScript 代码来证明其是一个真正的浏览器而非自动化工具。这有助于阻止某些类型的自动化攻击。
【来源:https://www.bujj.org/index.php/2023/07/09/538/,转载请注明】
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 是一种边缘计算平台,具有以下主要作用:
边缘计算: 允许代码在离用户最近的 Cloudflare 数据中心运行,减少延迟。
自定义请求处理: 可以拦截、修改和重定向 HTTP 请求和响应。
无服务器执行: 无需管理服务器,代码在需要时自动扩展。
全球分布: 在 Cloudflare 的全球网络上运行,提供更好的性能和可靠性。
安全性增强: 可以实现自定义安全逻辑,如请求过滤、身份验证等。
动态内容生成: 可以动态生成内容,而不仅仅是提供静态文件。
API 集成: 可以作为不同 API 之间的中间层,进行数据转换和聚合。
A/B 测试: 可以轻松实现流量分流和 A/B 测试。
性能优化: 可以进行图像处理、缓存控制等性能优化任务。
成本效益: 按实际使用量计费,适合各种规模的应用。
这些功能使 Cloudflare Workers 成为构建快速、可扩展和安全的 Web 应用程序的强大工具。您是否想了解更多关于其中某个具体方面的信息?
一个账号最多可以创建多少个worker?
Cloudflare 对于单个账户可以创建的 Workers 数量有一些限制,但这些限制会根据您的账户类型而有所不同:
免费账户(Free plan):
- 通常可以创建最多 1 个 Worker。
付费账户(Pro, Business, Enterprise plans):
- 可以创建多个 Workers,具体数量限制会更高。
- Pro 和 Business 计划通常可以创建 30 个以上的 Workers。
- Enterprise 计划可能会有更高的限制,或者可以根据需求进行自定义。
Workers Unlimited:
- 这是一个附加选项,允许您创建无限数量的 Workers。
需要注意的是,Cloudflare 的具体限制可能会随时间变化。为了获取最准确和最新的信息,我建议您:
- 查看您的 Cloudflare 账户仪表板,那里通常会显示您当前计划的具体限制。
- 直接咨询 Cloudflare 的客户支持,他们可以提供最新的准确信息。
- 检查 Cloudflare 的官方文档,那里通常会列出最新的限制和规格。
如果您需要创建大量的 Workers,可能需要考虑升级您的计划或添加 Workers Unlimited 选项。您是否需要了解更多关于 Workers 的使用策略或最佳实践?
worker对外的ip是固定的吗? worker相当于阿里云的什么服务?
关于您的问题,让我逐一回答:
- Worker 对外的 IP 是固定的吗?
Cloudflare Workers 对外的 IP 通常不是固定的。原因如下:
- 分布式特性:Workers 运行在 Cloudflare 的全球边缘网络上,请求会被路由到最近的数据中心。
- 动态分配:每次执行 Worker 时,可能会在不同的服务器或 IP 上运行。
- 网络优化:Cloudflare 会根据网络状况和负载进行动态调整。
这意味着从外部看,Worker 的出口 IP 可能会经常变化。如果您需要固定 IP,可能需要考虑其他解决方案或联系 Cloudflare 寻求企业级支持。
- Worker 相当于阿里云的什么服务?
Cloudflare Workers 在阿里云上没有完全对等的服务,但最接近的可能是以下几种服务的组合:
- 函数计算(Function Compute):这是阿里云的无服务器计算平台,类似于 Workers 的运行环境。
- 边缘节点服务(Edge Node Service):提供全球分布的边缘计算能力。
- CDN:虽然 Workers 不仅仅是 CDN,但它们都提供内容分发和边缘计算能力。
- API 网关:可以用于请求路由和处理,类似于 Workers 的一些功能。
Cloudflare Workers 集成了这些功能,提供了一个统一的平台来处理边缘计算、内容分发、请求处理等任务。阿里云通常需要组合多个服务来实现类似的功能集。
需要注意的是,虽然这些服务在概念上相似,但在具体实现、使用方式和性能特征上可能有显著差异。选择哪种服务取决于您的具体需求、技术栈和预算考虑。
您是否需要更详细地了解 Cloudflare Workers 和阿里云服务之间的某些具体差异?
worker支持什么语言?
Cloudflare Workers 主要支持 JavaScript 和其相关的技术栈。具体来说,支持的语言和技术包括:
JavaScript:
- 这是 Workers 的主要编程语言。
- 支持 ECMAScript 2020 (ES2020) 标准。
TypeScript:
- 可以使用 TypeScript 编写 Worker,然后编译为 JavaScript。
WebAssembly (Wasm):
- 允许使用其他语言编写代码,然后编译为 WebAssembly。
- 通过这种方式,理论上可以支持如 C、C++、Rust 等语言。
特定的框架和库:
- Workers Sites:用于静态网站托管。
- Cloudflare’s Workers KV:用于键值存储。
- Durable Objects:用于有状态的应用程序。
API 和 Web 标准:
- 支持大多数现代 Web API,如 Fetch、URL、TextEncoder 等。
- 支持 Service Worker API 的子集。
特定的构建工具和框架:
- Wrangler:Cloudflare 的官方 CLI 工具。
- 支持使用 Webpack、Rollup 等构建工具。
需要注意的是,虽然主要支持 JavaScript,但通过 WebAssembly,理论上可以使用多种语言。然而,直接使用 JavaScript 或 TypeScript 通常是最简单和最受支持的方法。
您是否对使用某种特定语言或技术在 Workers 上开发感兴趣?或者您想了解更多关于 Workers 的开发环境和工具链吗?
我想通过worker,给我的github的一个仓库更新提交,记录每天市值排名前30的公司的情况,分布在每天6点到18点之间提交,要如何操作?github是否会封我的账号?
这是一个有趣的项目想法。让我为您概述一下如何使用 Cloudflare Worker 来实现这个功能,以及一些需要注意的事项:
1 | async function handleSchedule(event) { |
这个脚本提供了一个基本框架来实现您的需求。以下是一些关键点和建议:
实现细节:
- 您需要实现
fetchTopCompanies函数来获取市值排名前30的公司数据。这可能需要使用一个财经 API。 generateCommitContent函数应该格式化这些数据以便于阅读和分析。
- 您需要实现
GitHub 身份验证:
- 使用 GitHub Personal Access Token 进行身份验证。确保token具有适当的权限。
- 不要直接在代码中存储token,使用 Cloudflare Workers 的环境变量或秘密管理功能。
调度:
- 使用 Cloudflare Workers 的 cron 触发器来安排每日更新。
- 脚本中的
cronSchedule变量设置了一个随机时间(在6:00到18:00之间)。
关于 GitHub 账户安全:
- GitHub 通常不会因为这种自动化操作而封禁账户,只要您遵守他们的服务条款。
- 然而,为了安全起见:
- 使用合理的更新频率(每天一次是可以的)。
- 确保您的commits有意义且不是垃圾信息。
- 考虑在仓库描述中说明这是自动化更新。
错误处理:
- 添加适当的错误处理和日志记录,以便于调试和监控。
数据源:
- 确保您有权限使用和分享您获取的公司数据。
优化:
- 考虑缓存一些数据以减少 API 调用,特别是如果您使用的是有请求限制的财经 API。
要部署这个 Worker,您需要:
- 在 Cloudflare 控制台创建一个新的 Worker。
- 复制并修改上面的代码以适应您的需求。
- 设置必要的环境变量(如 GitHub token)。
- 设置 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 基础设施的服务平台。它的主要特点包括:
提供高性能和低延迟的区块链 RPC 基础设施服务。它利用了分散的第三方节点网络,能够提供可靠、高效的中间层服务。
支持多种区块链网络,不仅限于以太坊生态,持续扩展支持的链。
提供即时可用的 API 访问,用户无需自行搭建节点即可使用。
拥有友好的仪表板和用户体验,支持稳定币付款等便利功能。
提供灵活的定价方案,满足不同项目的需求。
提供 24/7 的工程支持,保证服务的可靠性。
总的来说,Blast API 旨在为 Web3 开发者和基础设施公司提供高性能、可靠的分布式 RPC 基础设施服务,帮助他们更快地构建和部署应用程序。它是一个专注于提升 Web3 应用基础设施的服务平台。
根据 NodeReal 的官网Dashboard页面,可以看到NodeReal是一个提供区块链基础设施服务的平台。它的主要功能如下:
提供高可靠性和高性能的区块链节点基础设施服务。用户可以直接使用NodeReal的节点进行区块链的读写操作,而无需自己搭建和维护节点。
支持多种主流区块链网络,包括以太坊、BNB Chain、Polygon、Avalanche等。用户可以在统一的仪表板上管理对接的各种链。
提供仪表板界面,用户可以在仪表板上监控节点的运行状态、API调用情况等关键指标。
支持REST API和WebSocket API,方便开发者集成使用。
提供灵活的定价方案,满足不同规模项目的需求。
提供全天候的工程支持,保证服务的可靠性。
总的来说,NodeReal 是一站式的区块链节点基础设施服务平台,面向区块链开发者和企业提供稳定、高效的区块链访问服务,帮助他们专注于应用程序的开发和部署,而无需自己搭建和管理节点基础设施。
20240911 再次使用cf的web3
我在cloudflare上面用web3功能订阅了eth的网关,地址为shuang.52it.net, 如何测试其可用性?
要测试您在 Cloudflare 上订阅的 Web3 功能的可用性,可以按照以下步骤进行:
使用 RPC 客户端:
使用像
curl或 Postman 这样的工具,向您的网关地址发送请求。示例请求(使用
curl):1
2
3curl --location 'https://shuang.52it.net/v1/mainnet' \
--header 'Content-Type: application/json' \
--data '{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["0x2244", true],"id":1}'如果返回的结果包含当前区块号,说明网关可用。
使用 Web3.js:
- 如果您熟悉 JavaScript,可以使用 Web3.js 库进行测试。
- 示例代码:
1
2
3
4
5
6const Web3 = require('web3');
const web3 = new Web3('https://shuang.52it.net');
web3.eth.getBlockNumber()
.then(console.log)
.catch(console.error);
检查响应时间和状态码:
- 在发送请求时,注意观察响应时间和 HTTP 状态码。如果状态码为 200,且响应时间合理,说明网关正常工作。
使用区块链浏览器:
- 通过区块链浏览器(如 Etherscan)手动验证一些交易或区块,以确保网关返回的数据是最新的。
监控工具:
- 可以使用监控工具(如 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 提供的一种集成安全和网络服务的平台,旨在为企业提供全面的网络安全解决方案。它结合了多种功能,主要包括:
安全访问:通过 Zero Trust 安全模型,允许用户安全访问应用程序和数据,而不依赖传统的 VPN。
应用程序保护:提供对内部和外部应用程序的保护,防止 DDoS 攻击、恶意软件和其他网络威胁。
网络优化:通过 Cloudflare 的全球网络,提供更快速和可靠的连接,提高应用程序的性能。
数据保护:确保敏感数据的安全传输和存储,符合合规要求。
可见性和分析:提供详细的日志和分析,帮助企业监控网络活动和安全事件。
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 防护、加速和负载均衡功能。
主要功能包括:
DDoS 防护:
- Cloudflare 的全球 Anycast 网络可以自动检测和缓解大规模 DDoS 攻击,确保应用在攻击中保持可用。
性能优化:
- Spectrum 可以减少网络延迟并提高非 HTTP 流量的传输速度。
TCP/UDP 协议支持:
- Spectrum 支持所有 TCP 和部分 UDP 应用协议,不仅限于 Web 流量,还包括游戏、VoIP、SSH、RDP 等各种类型的流量。
全球负载均衡:
- Cloudflare 的全球网络通过智能路由技术,可以将流量路由到最优的服务器,确保低延迟和高可靠性。
SSL/TLS 加密:
- Spectrum 还可以为任何 TCP 流量提供端到端的加密,即使原始服务本身不支持 SSL/TLS。
高可用性:
- Spectrum 依托于 Cloudflare 的全球网络,提供了高可用性和自动故障切换功能。
使用场景:
- 游戏行业:加速和保护游戏服务,防止 DDoS 攻击,优化玩家体验。
- 企业服务:保护和加速远程桌面(RDP)、SSH 和数据库访问,确保内部服务的稳定性和安全性。
- 电子邮件服务:保护电子邮件服务器免受攻击,并确保邮件传输的可靠性和安全性。
通过 Spectrum,Cloudflare 将其强大的网络和安全能力扩展到了更多种类的流量和应用,使企业可以更轻松地保护和加速关键的业务服务。
流量序列
cloudflare的Snippets是什么?
Cloudflare 的 Snippets 是一项功能,允许开发者在 Cloudflare 的边缘网络上执行自定义的 JavaScript 代码片段。这些代码片段可以在请求到达服务器之前(即在边缘)对流量进行修改、分析或增强,从而定制响应行为、优化性能或实现特定的业务逻辑。
Snippets 的主要功能和用途包括:
自定义请求处理:
- 使用 JavaScript 来修改 HTTP 请求或响应。例如,你可以根据用户的地理位置、设备类型或其他请求头信息来动态调整页面内容。
A/B 测试:
- 通过 Snippets,可以在 Cloudflare 的边缘处理 A/B 测试逻辑,将一部分用户定向到不同版本的页面,而无需修改后端服务器代码。
安全和访问控制:
- 你可以使用 Snippets 来编写自定义的安全策略,比如基于 IP 地址、用户代理等条件阻止或允许访问。
性能优化:
- Snippets 可以用于优化请求和响应,减少页面加载时间。例如,动态压缩资源、修改缓存策略、或根据条件重写 URL 等。
个性化内容:
- 根据用户的属性(如浏览器类型、地理位置等),在边缘动态生成或修改响应,提供个性化体验。
日志和监控:
- 你可以在 Snippets 中插入自定义日志代码,用于跟踪请求流量和用户行为,帮助调试或监控应用。
与其他 Cloudflare 产品的关系:
Cloudflare Workers:Snippets 功能通常与 Cloudflare Workers 搭配使用。Workers 是 Cloudflare 的无服务器计算平台,允许你编写和部署 JavaScript 代码以处理 HTTP 请求。Snippets 本质上是较小的 JavaScript 代码片段,可以作为 Workers 中的一部分运行。
Page Rules 和 Transform Rules:Snippets 可以与 Cloudflare 的其他规则系统一起使用,帮助开发者实现复杂的业务逻辑,比如 URL 重写、缓存策略调整等。
举例:Snippets 的应用场景
URL 重写:
- 拦截请求并重写 URL,例如将旧版本的 API 请求重定向到新版本。
自定义页面重定向:
- 根据用户的地理位置或设备类型,自动将用户重定向到本地化的站点或适配的移动页面。
动态注入内容:
- 在进入最终页面之前,动态向响应中插入脚本或样式表,帮助实现更好的用户体验。
安全增强:
- 在边缘添加额外的安全检查,比如验证请求头中的自定义令牌,或者阻止特定类型的恶意请求。
总结
Cloudflare Snippets 为开发者提供了在边缘网络级别上编写自定义 JavaScript 代码的能力,使得请求在到达服务器之前就可以被修改或增强。这项功能强大而灵活,适用于各种场景,包括性能优化、安全控制、个性化内容等。
Cloudflare Zaraz是什么?有何作用?
Cloudflare Zaraz 是 Cloudflare 提供的一项服务,旨在通过在边缘加载和管理第三方工具来优化网站性能和安全性。Zaraz 允许网站开发者以更高效的方式加载和运行各种第三方脚本和工具(如分析工具、广告追踪、社交媒体插件等),从而减少客户端资源占用,提升页面加载速度,同时提高数据隐私和安全性。
Cloudflare Zaraz 的主要功能和作用:
提升性能:
- 第三方脚本管理:通常,网站中的第三方脚本会直接在用户浏览器中运行,可能会导致页面加载速度变慢。Zaraz 通过 Cloudflare 的边缘网络加载和执行这些脚本,减少了浏览器的负担,从而加快页面加载速度。
- 减少阻塞资源:Zaraz 在边缘处理第三方脚本,避免了脚本在浏览器中阻塞页面的渲染,降低了加载时间和延迟问题。
提高安全性:
- 隔离第三方脚本:Zaraz 将第三方脚本与用户的浏览器隔离,在 Cloudflare 的边缘网络上执行代码,减少了潜在的安全漏洞和攻击风险,防止恶意脚本影响用户体验或网站安全。
- 数据隐私保护:Zaraz 可以限制第三方工具访问敏感用户数据,确保用户隐私得到更好的保护。开发者可以配置哪些数据可以发送给第三方应用,避免过多的数据泄露。
简化第三方工具集成:
- 集中管理和监控:Zaraz 提供了一个统一的界面,允许开发者管理和配置各种第三方工具(如 Google Analytics、Facebook Pixel、广告平台等)。开发者不需要手动添加每个工具的脚本代码,而是可以通过 Zaraz 的控制台来管理这些工具,减少了集成的复杂性。
- 无代码配置:通过 Zaraz,许多常见的第三方工具可以通过无代码的方式进行配置和管理,帮助开发者快速部署和修改这些工具的设置。
兼容性和可扩展性:
- Zaraz 支持各种第三方工具,包括常见的分析、广告、性能监控和社交媒体插件。它可以替代传统的客户端集成方式,无需手动插入复杂的 JavaScript 代码。
- Zaraz 允许开发者自定义和扩展功能。例如,开发者可以添加自定义的跟踪事件或修改默认的工具行为,以适应独特的业务需求。
Zaraz 的工作原理:
请求拦截:当用户访问网站时,Zaraz 会拦截请求并判断需要加载哪些第三方工具。
边缘执行:Zaraz 在 Cloudflare 的边缘网络上加载和执行这些第三方工具的代码,而不是在用户的浏览器中执行。这种方式减少了浏览器的负担,并加快了页面的加载速度。
数据控制:Zaraz 帮助开发者控制哪些数据可以发送到第三方工具,并确保数据隐私得到保护。例如,它可以过滤和处理用户的敏感信息,避免无意中向第三方泄露数据。
跟踪和分析:Zaraz 提供了跟踪和分析功能,帮助开发者了解和优化第三方工具的使用情况。
Zaraz 的使用场景:
网站性能优化:
- 如果你的站点依赖多个第三方工具(如广告、分析、聊天插件等),Zaraz 可以在边缘管理这些工具,减少它们对页面加载速度的负面影响。
隐私保护和合规性:
- Zaraz 允许你精细控制数据发送到第三方工具的方式,帮助你遵守 GDPR、CCPA 等数据隐私法规,确保用户数据得到妥善保护。
简化维护和管理:
- 使用 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/
原文链接: https://dashen.tech/2018/05/13/Cloudflare的使用/
版权声明: 转载请注明出处.