683 字
3 min
Netlify反代教程

使用 Netlify 反代你的个人网站(零成本、零备案、IPv6 友好)#

适用场景

  • 家宽拿不到公网 IPv4,只能拿到 IPv6;
  • 想给内网/树莓群晖上的服务一个公网域名;
  • 需要一个完全免费的 HTTPS 反代/CDN。

整个流程 10 分钟搞定,完全白嫖,不需要备案。


  1. 前置条件

项目 说明 本地服务 能监听某个端口(如 80/5000/8000 均可),最好已配置好 IPv6 DDNS 域名 任意支持 CNAME 的域名(可在 Cloudflare、Porkbun、阿里云等托管) GitHub 账号 用来托管配置文件 浏览器 + 终端 Chrome / Edge + 自带终端即可


  1. 注册 Netlify 并准备仓库

  2. 打开 https://app.netlify.com → 注册账号并登录。

  3. 打开 GitHub → 新建一个空仓库,名称随意,例如 netlify-proxy-demo

  4. 在仓库根目录新建文件 netlify.toml,内容如下:

[[redirects]]
from = "/*"
to = "http://[你的IPv6地址]:5000/:splat" # 也可填域名,如 http://nas.example.com:5000/
status = 200
force = true

注意:

  • 冒号后面的 / 不能丢;
  • 如果你想反代 域名,把 [你的IPv6地址] 换成 nas.example.com 即可;
  • 如果本地服务跑在 80 端口,把 5000 改成 80。
  1. git add . && git commit -m "init" && git push

  1. 在 Netlify 部署

  2. 回到 Netlify 控制台 → Add new site → Import from Git → 选择刚才的 GitHub 仓库。

  3. 直接点 Deploy site,几秒后就能得到一个 https://xxx-123.netlify.app 的二级域名。

  4. 打开浏览器访问 https://xxx-123.netlify.app,如果能看到你的本地网页,说明反代成功。


  1. 绑定自定义域名(可选但推荐)

  2. Netlify 控制台 → Domain management → Add custom domain → 输入你的域名,如 blog.example.com

  3. 按提示到你的 DNS 服务商处添加一条 CNAME 记录:

主机记录 记录类型 记录值 blog CNAME xxx-123.netlify.app

  1. 等待 DNS 生效(通常 1 分钟~5 分钟),浏览器访问 https://blog.example.com 即可。

  1. 一键启用 HTTPS & HTTP/2

Netlify 会自动帮你申请 Let’s Encrypt 证书,无需任何额外操作。

如需强制 HTTPS:

Domain management → HTTPS → Force HTTPS 打开即可。


  1. 常见问题 FAQ

问题 解决思路 页面空白 / 502 检查 netlify.toml 中地址、端口是否正确;本地防火墙放行 IPv6 端口 样式错乱 本地服务需返回正确的 Content-Type,或加 --header "Host: xxx" 调试 想反代 HTTPS? 本地服务需监听 443 并提供证书,再把 http:// 改成 https:// 想反代 IPv4? 把 to = "http://公网IPv4:端口/" 即可,但这就失去“IPv6 友好”意义了


  1. 小结

优点 缺点 免费、自动 HTTPS、全球 CDN 每月 100 GB 流量限制(个人站足够) 支持 IPv6 回源 不支持 WebSocket 配置简单,10 分钟上线 无法自定义 Nginx 规则

至此,你就拥有了一个 零成本、零备案、IPv6 友好 的个人网站反代/CDN。

Enjoy!

Netlify反代教程
https://fuwari.oh1.top/posts/guide/netlify-proxy/
作者
yCENzh
发布于
2025-08-09