上一篇 下一篇 分享链接 返回 返回顶部

从域名接入到网站上线:Cloudflare 新手部署全流程指南

发布人:慈云数据-客服中心 发布时间:23小时前 阅读量:4

Cloudflare 部署完整教程|零基础可学

Cloudflare 是目前非常流行的一站式网络服务平台,常见用途包括:域名 DNS 解析、网站 CDN 加速、HTTPS 证书、DDoS 防护、静态网站部署、Serverless 服务、内网穿透等。对于零基础用户来说,Cloudflare 最常见的使用场景是:把自己的域名接入 Cloudflare,并通过 Cloudflare 部署或加速网站

本文将从零开始,带你完整了解 Cloudflare 的基础概念、账号注册、域名接入、DNS 配置、HTTPS 设置、网站部署方式、常见问题排查等内容。即使你没有服务器运维经验,也可以按照步骤一步一步完成。


一、Cloudflare 是什么?

Cloudflare 可以理解为一个位于用户和你的网站服务器之间的“中间层”。当用户访问你的网站时,请求会先到达 Cloudflare,再由 Cloudflare 转发到你的源站服务器,或者直接返回缓存内容。

它主要提供以下能力:

  1. DNS 解析

    • 将域名解析到服务器 IP;
    • 替代传统域名服务商的 DNS;
    • 支持快速生效和灵活管理。
  2. CDN 加速

    • Cloudflare 在全球有大量节点;
    • 静态资源可以缓存在离用户更近的节点;
    • 提升访问速度,降低源站压力。
  3. HTTPS/SSL

    • 免费提供 SSL 证书;
    • 支持用户到 Cloudflare、Cloudflare 到源站的加密连接;
    • 可以轻松开启 HTTPS。
  4. 安全防护

    • 防止常见攻击;
    • 支持防火墙规则;
    • 可开启验证码、人机验证、速率限制等。
  5. 网站部署

    • Cloudflare Pages 可部署静态网站;
    • Cloudflare Workers 可部署无服务器函数;
    • Cloudflare Tunnel 可实现内网服务公网访问。

二、准备工作

在正式开始之前,你需要准备以下内容:

1. 一个域名

你可以在以下平台注册域名:

  • 阿里云
  • 腾讯云
  • GoDaddy
  • Namecheap
  • Porkbun
  • Spaceship
  • Cloudflare Registrar

如果你已经有域名,可以直接使用。

2. 一个 Cloudflare 账号

访问官网:

https://www.cloudflare.com/

点击右上角注册账号,使用邮箱和密码完成注册即可。

3. 一个网站或服务器

根据你的需求不同,准备方式也不同:

  • 如果你只是部署静态网站,可以使用 Cloudflare Pages;
  • 如果你已有服务器,可以把域名解析到服务器;
  • 如果你想运行轻量 API,可以使用 Cloudflare Workers;
  • 如果你想把本地服务暴露到公网,可以使用 Cloudflare Tunnel。

本文会重点讲解最常见的几种部署方式。


三、将域名接入 Cloudflare

这是使用 Cloudflare 的第一步。

第 1 步:添加站点

登录 Cloudflare 后,进入控制台,点击:

Add a site

输入你的域名,例如:

example.com

注意:这里填写的是根域名,不要填写 www.example.com,也不要带 https://

正确示例:

example.com

错误示例:

https://example.com
www.example.com

填写后点击继续。


第 2 步:选择套餐

Cloudflare 会让你选择套餐。对于大多数个人用户和普通网站来说,选择:

Free 免费套餐

即可。

免费套餐已经包含:

  • DNS 解析;
  • CDN 加速;
  • 免费 SSL;
  • 基础安全防护;
  • 页面规则;
  • Cloudflare Pages;
  • Workers 免费额度。

第 3 步:检查 DNS 记录

Cloudflare 会自动扫描你当前域名已有的 DNS 记录,例如:

A      example.com       1.2.3.4
CNAME  www               example.com
MX     example.com       mail.example.com
TXT    example.com       v=spf1 ...

如果你之前没有配置过 DNS,可能这里为空。

你可以先继续,后面再手动添加。


第 4 步:修改域名 NS 服务器

这是接入 Cloudflare 最关键的一步。

Cloudflare 会给你两个 NS 地址,例如:

alice.ns.cloudflare.com
bob.ns.cloudflare.com

你需要登录你的域名注册商后台,把原来的 NS 服务器改成 Cloudflare 提供的这两个。

例如你在阿里云购买的域名,需要进入:

域名管理 → DNS 修改 / 修改 DNS 服务器

将原来的 NS 替换为 Cloudflare 提供的 NS。

修改完成后,回到 Cloudflare 点击确认。


第 5 步:等待生效

NS 修改通常需要几分钟到数小时生效,极端情况下可能需要 24~48 小时。

你可以通过以下方式检查:

nslookup -type=ns example.com

或者使用在线工具查询:

https://dnschecker.org/

当查询结果显示 Cloudflare 的 NS 服务器时,说明接入成功。


四、DNS 解析配置详解

进入 Cloudflare 后台,选择你的域名,然后点击:

DNS → Records

这里可以添加各种 DNS 记录。


1. A 记录

A 记录用于将域名解析到 IPv4 地址。

例如你的服务器 IP 是:

123.123.123.123

你希望访问 example.com 时打开这个服务器,就添加:

类型 名称 内容
A @ 123.123.123.123

其中:

  • @ 表示根域名;
  • 123.123.123.123 是服务器 IP。

如果你还希望 www.example.com 也访问同一个网站,可以添加:

类型 名称 内容
A www 123.123.123.123

2. CNAME 记录

CNAME 用于将一个域名指向另一个域名。

例如:

类型 名称 内容
CNAME www example.com

表示访问:

www.example.com

会指向:

example.com

如果你的网站托管在 Vercel、Netlify、GitHub Pages、Cloudflare Pages 等平台,也经常会用到 CNAME。


3. AAAA 记录

AAAA 记录用于 IPv6 地址。

例如:

类型 名称 内容
AAAA @ 2400:xxxx:xxxx::1

如果你的服务器没有 IPv6,可以不配置。


4. MX 记录

MX 记录用于邮箱服务。

如果你使用企业邮箱,例如腾讯企业邮箱、阿里企业邮箱、Google Workspace,就需要配置 MX 记录。

示例:

类型 名称 内容 优先级
MX @ mx1.examplemail.com 10
MX @ mx2.examplemail.com 20

注意:邮箱相关记录一般不要随便删除,否则可能导致收不到邮件。


5. TXT 记录

TXT 记录常用于域名验证、邮箱 SPF、DKIM、DMARC 等。

例如:

v=spf1 include:example.com ~all

或者某些平台要求你添加:

google-site-verification=xxxxxxxx

五、Cloudflare 小云朵是什么意思?

在 DNS 记录右侧,你会看到一个云朵图标:

  • 橙色云朵:代理开启;
  • 灰色云朵:仅 DNS 解析。

1. 橙色云朵:Proxied

开启代理后,用户访问网站会经过 Cloudflare。

优点:

  • 可以使用 CDN;
  • 可以隐藏源站 IP;
  • 可以使用 WAF 和安全防护;
  • 可以启用缓存;
  • 可以使用 Cloudflare 的 HTTPS。

适合:

  • 网站访问;
  • HTTP/HTTPS 服务。

2. 灰色云朵:DNS only

仅做 DNS 解析,请求不会经过 Cloudflare。

适合:

  • 邮箱 MX;
  • FTP;
  • SSH;
  • 某些非 HTTP 服务;
  • 不希望走 Cloudflare 代理的记录。

注意:Cloudflare 免费套餐主要代理 HTTP/HTTPS 流量,不适合直接代理 SSH、数据库等端口。


六、配置 HTTPS/SSL

域名接入 Cloudflare 后,建议立即配置 HTTPS。

进入:

SSL/TLS → Overview

你会看到几种 SSL 模式。


1. Off

关闭 HTTPS,不推荐。


2. Flexible

用户到 Cloudflare 是 HTTPS,Cloudflare 到源站是 HTTP。

优点:

  • 源站无需配置证书;
  • 简单。

缺点:

  • Cloudflare 到源站不加密;
  • 容易出现跳转循环;
  • 安全性较弱。

不推荐长期使用。


3. Full

用户到 Cloudflare 是 HTTPS,Cloudflare 到源站也是 HTTPS。

源站可以使用自签名证书。


4. Full(strict)

最推荐。

用户到 Cloudflare 加密,Cloudflare 到源站也加密,并且源站证书必须有效。

建议选择:

Full (strict)

如果你的源站没有证书,可以使用 Cloudflare 提供的 Origin Certificate。


七、为源站安装 Cloudflare Origin Certificate

如果你有自己的服务器,并希望使用 Full(strict),可以安装 Cloudflare Origin Certificate。

第 1 步:生成证书

进入:

SSL/TLS → Origin Server

点击:

Create Certificate

选择:

  • 私钥类型:RSA 或 ECC;
  • 主机名:example.com*.example.com
  • 有效期:默认即可。

Cloudflare 会生成:

  • Origin Certificate;
  • Private Key。

请务必保存私钥,生成后无法再次查看。


第 2 步:上传到服务器

假设你的服务器使用 Nginx,可以将证书保存为:

/etc/nginx/ssl/origin.pem
/etc/nginx/ssl/origin.key

第 3 步:配置 Nginx

示例配置:

server {
    listen 80;
    server_name example.com www.example.com;

    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name example.com www.example.com;

    ssl_certificate /etc/nginx/ssl/origin.pem;
    ssl_certificate_key /etc/nginx/ssl/origin.key;

    root /var/www/html;
    index index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }
}

修改后检查配置:

nginx -t

重载 Nginx:

systemctl reload nginx

然后在 Cloudflare 中选择:

SSL/TLS → Overview → Full (strict)

八、部署方式一:使用 Cloudflare Pages 部署静态网站

如果你的网站是静态网站,例如:

  • HTML/CSS/JS;
  • Vue;
  • React;
  • Vite;
  • Astro;
  • Hugo;
  • Hexo;
  • Next.js 静态导出;
  • Nuxt 静态导出;

那么 Cloudflare Pages 是非常适合的选择。


第 1 步:准备代码仓库

你需要把代码上传到 GitHub 或 GitLab。

例如一个简单项目结构:

my-site/
├── index.html
├── style.css
└── main.js

如果是 Vite 项目,一般结构是:

my-vite-site/
├── package.json
├── src/
├── public/
└── vite.config.js

第 2 步:创建 Pages 项目

进入 Cloudflare 后台:

Workers & Pages → Create application → Pages

选择:

Connect to Git

授权 GitHub 或 GitLab,然后选择你的项目仓库。


第 3 步:配置构建命令

不同项目配置不同。

普通 HTML 项目

如果你的仓库根目录就是 index.html,可以不填写构建命令,输出目录填写:

/

或者根据页面提示选择默认配置。

Vite 项目

构建命令:

npm run build

输出目录:

dist

Vue CLI 项目

构建命令:

npm run build

输出目录:

dist

React 项目

如果是 Create React App:

npm run build

输出目录:

build

Hugo 项目

构建命令:

hugo

输出目录:

public

第 4 步:部署

配置完成后点击:

Save and Deploy

Cloudflare 会自动拉取代码并构建。

构建完成后,你会得到一个默认域名:

your-project.pages.dev

访问该地址即可查看网站。


第 5 步:绑定自定义域名

进入 Pages 项目:

Custom domains → Set up a custom domain

输入你的域名,例如:

example.com

或者:

www.example.com

如果域名已经接入 Cloudflare,系统通常会自动帮你添加 DNS 记录。

完成后等待证书签发,即可通过自己的域名访问 Pages 网站。


九、部署方式二:将域名指向自己的服务器

如果你已经有 VPS 或云服务器,例如:

  • 阿里云 ECS;
  • 腾讯云轻量服务器;
  • AWS EC2;
  • Google Cloud;
  • DigitalOcean;
  • Vultr;
  • Hetzner;

你可以用 Cloudflare 将域名解析到服务器。


第 1 步:确认服务器 IP

在服务器控制台查看公网 IP,例如:

123.123.123.123

第 2 步:添加 DNS 记录

在 Cloudflare 的 DNS 页面添加:

类型 名称 内容 代理
A @ 123.123.123.123 开启
A www 123.123.123.123 开启

如果你的服务器没有配置网站,请先安装 Nginx。


第 3 步:安装 Nginx

以 Ubuntu 为例:

sudo apt update
sudo apt install nginx -y

启动 Nginx:

sudo systemctl start nginx
sudo systemctl enable nginx

访问服务器 IP,如果看到 Nginx 默认页面,说明安装成功。


第 4 步:上传网站文件

假设网站目录为:

/var/www/example

创建目录:

sudo mkdir -p /var/www/example

创建测试页面:

sudo nano /var/www/example/index.html

写入:




  
  Hello Cloudflare


  

Cloudflare 部署成功


第 5 步:配置 Nginx 站点

新建配置文件:

sudo nano /etc/nginx/sites-available/example

写入:

server {
    listen 80;
    server_name example.com www.example.com;

    root /var/www/example;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

启用配置:

sudo ln -s /etc/nginx/sites-available/example /etc/nginx/sites-enabled/

检查配置:

sudo nginx -t

重载:

sudo systemctl reload nginx

此时访问域名即可看到页面。


十、部署方式三:使用 Cloudflare Workers 部署简单接口

Cloudflare Workers 适合部署轻量级 API、跳转服务、反向代理、边缘计算逻辑等。


第 1 步:创建 Worker

进入:

Workers & Pages → Create application → Workers

点击创建 Worker。

你会看到一个默认示例:

export default {
  async fetch(request, env, ctx) {
    return new Response("Hello World!");
  },
};

点击部署后,会得到一个地址:

xxx.workers.dev

访问即可看到输出。


第 2 步:编写简单 API

例如返回 JSON:

export default {
  async fetch(request) {
    const data = {
      message: "Cloudflare Workers 部署成功",
      time: new Date().toISOString()
    };

    return new Response(JSON.stringify(data), {
      headers: {
        "Content-Type": "application/json;charset=UTF-8"
      }
    });
  }
};

第 3 步:绑定自定义域名

进入 Worker 项目:

Settings → Triggers → Custom Domains

添加:

api.example.com

如果域名在 Cloudflare 中,系统会自动处理证书和路由。


十一、部署方式四:使用 Cloudflare Tunnel 内网穿透

Cloudflare Tunnel 可以让你的本地服务或内网服务通过 Cloudflare 暴露到公网,而不需要开放服务器端口,也不需要公网 IP。

适合:

  • 本地开发调试;
  • 家庭服务器;
  • NAS;
  • 内网 Web 服务;
  • 不想暴露真实 IP 的服务。

第 1 步:安装 cloudflared

以 Ubuntu 为例:

wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
sudo dpkg -i cloudflared-linux-amd64.deb

检查版本:

cloudflared --version

第 2 步:登录 Cloudflare

运行:

cloudflared tunnel login

终端会输出一个链接,复制到浏览器中打开,选择你的域名并授权。


第 3 步:创建 Tunnel

cloudflared tunnel create my-tunnel

创建后会生成一个 Tunnel ID。


第 4 步:配置 Tunnel

创建配置文件:

sudo mkdir -p /etc/cloudflared
sudo nano /etc/cloudflared/config.yml

示例配置:

tunnel: 你的Tunnel-ID
credentials-file: /root/.cloudflared/你的Tunnel-ID.json

ingress:
  - hostname: app.example.com
    service: http://localhost:3000
  - service: http_status:404

意思是将:

app.example.com

转发到本机:

http://localhost:3000

第 5 步:创建 DNS 路由

cloudflared tunnel route dns my-tunnel app.example.com

第 6 步:启动 Tunnel

cloudflared tunnel run my-tunnel

如果测试正常,可以安装为系统服务:

sudo cloudflared service install
sudo systemctl enable cloudflared
sudo systemctl start cloudflared

十二、常见问题与解决方法

1. 域名接入 Cloudflare 后无法访问

常见原因:

  • NS 还未生效;
  • DNS 记录配置错误;
  • 服务器防火墙未开放 80/443;
  • Nginx/Apache 配置错误;
  • SSL 模式选择不正确。

解决方法:

nslookup example.com
ping example.com
curl -I https://example.com

逐步排查域名是否解析正确、源站是否可访问。


2. 出现 521 错误

521 表示 Cloudflare 无法连接到源站服务器。

可能原因:

  • 服务器没有启动;
  • 80/443 端口未开放;
  • 防火墙屏蔽了 Cloudflare IP;
  • Nginx 没有监听对应端口。

解决方法:

  • 检查服务器运行状态;
  • 检查安全组;
  • 检查防火墙;
  • 检查 Web 服务。

3. 出现 522 错误

522 表示连接超时。

可能原因:

  • 源站网络不稳定;
  • 服务器响应过慢;
  • 防火墙拦截;
  • Cloudflare 到源站线路异常。

可以尝试关闭代理,改为灰色云朵测试是否能直连。


4. 出现 525 或 526 错误

这通常和 SSL 有关。

  • 525:SSL 握手失败;
  • 526:源站证书无效,常见于 Full(strict)。

解决方法:

  • 源站安装有效证书;
  • 使用 Cloudflare Origin Certificate;
  • SSL 模式改为 Full 或 Full(strict)。

5. HTTPS 跳转循环

通常是因为 Cloudflare 使用 Flexible,而源站又强制跳转 HTTPS。

解决方案:

  • 不推荐使用 Flexible;
  • 改成 Full 或 Full(strict);
  • 源站正确配置 SSL 证书。

十三、推荐的基础配置

对于普通网站,建议配置如下:

DNS

记录 建议
网站 A/CNAME 记录 开启橙色云朵
邮箱 MX 记录 灰色云朵
TXT 验证记录 灰色云朵或默认
SSH/FTP 相关记录 灰色云朵

SSL/TLS

推荐:

Full (strict)

自动 HTTPS

进入:

SSL/TLS → Edge Certificates

开启:

Always Use HTTPS

这样用户访问 HTTP 会自动跳转到 HTTPS。

Brotli 压缩

进入:

Speed → Optimization

开启:

Brotli

可以提升文本资源加载速度。

缓存

进入:

Caching → Configuration

可以清理缓存:

Purge Cache

当你更新了网站但页面没变化时,可以尝试清理缓存。


十四、Cloudflare Pages 与服务器部署该选哪个?

如果你是新手,可以参考下面的选择:

场景 推荐方案
纯静态网站 Cloudflare Pages
个人博客 Cloudflare Pages / VPS
Vue/React 前端项目 Cloudflare Pages
需要数据库的后端网站 VPS / 云服务器
简单 API Cloudflare Workers
本地服务公网访问 Cloudflare Tunnel
想隐藏源站 IP Cloudflare 代理 / Tunnel

简单来说:

  • 只放网页:选 Pages;
  • 要跑后端:选服务器;
  • 要轻量函数:选 Workers;
  • 要穿透内网:选 Tunnel。

十五、部署完成后的检查清单

完成部署后,建议逐项检查:

  • [ ] 域名 NS 是否已经切换到 Cloudflare;
  • [ ] DNS 记录是否正确;
  • [ ] 网站记录是否开启橙色云朵;
  • [ ] SSL 模式是否为 Full(strict);
  • [ ] HTTP 是否会跳转到 HTTPS;
  • [ ] www 和根域名是否都能访问;
  • [ ] 页面资源是否正常加载;
  • [ ] 邮箱 MX 记录是否未被误删;
  • [ ] 源站服务器防火墙是否开放 80/443;
  • [ ] 更新网站后是否需要清理缓存。

十六、总结

Cloudflare 对新手非常友好,免费套餐已经足够满足大多数个人网站、博客、前端项目和小型应用的需求。完整部署流程可以概括为:

  1. 注册 Cloudflare 账号;
  2. 添加域名;
  3. 修改域名 NS 到 Cloudflare;
  4. 配置 DNS 解析;
  5. 设置 SSL/TLS;
  6. 根据需求选择 Pages、服务器、Workers 或 Tunnel;
  7. 完成访问测试和安全优化。

如果你只是想快速上线一个静态网站,最推荐使用 Cloudflare Pages,它不需要购买服务器,也不需要手动配置 Nginx,只要连接 GitHub 仓库就可以自动部署。如果你已经有云服务器,则可以通过 Cloudflare DNS 和 CDN 提升访问速度,并增强网站安全性。

掌握 Cloudflare 的基础配置后,你就可以更轻松地管理域名、部署网站、开启 HTTPS、隐藏源站 IP,并为后续的网站优化和安全防护打下基础。

目录结构
全文