网页发布本质是将HTML文件部署到公网可访问服务器,获得http(s)://地址;GitHub Pages适合纯静态页,Vercel/Netlify支持自动构建与CDN,云服务器+Nginx则提供完全控制但配置复杂。

网页发布到网上,本质是把 HTML 文件放到一台能被公网访问的服务器上。不是“上传到某个网站”,而是让文件在互联网上有了一个可被 http:// 或 https:// 访问的真实地址。
用 GitHub Pages 静态托管(适合纯 HTML/CSS/JS)
这是最快、零成本、无需备案的方式,特别适合个人作品页、文档页、小工具页面。
- 必须把项目仓库设为公开(Private 仓库无法启用 Pages)
- 默认只支持
index.html作为入口,路径需符合 GitHub Pages 的发布规则:根目录、/docs文件夹,或gh-pages分支 - 开启后访问地址形如
https://<username>.github.io/<repo-name>;若仓库名是<username>.github.io,则直接用https://<username>.github.io - 不支持服务端语言(如 PHP、Node.js),也不能读写本地文件或调用数据库
- 国内访问偶尔不稳定,且不能绑定自己的域名(除非你配置了 DNS 和自定义域,但基础功能仍可用)
用 Vercel / Netlify 部署(自动构建 + CDN 加速)
比 GitHub Pages 更智能,尤其适合带构建步骤的项目(比如 Vue、React、Svelte 生成的静态文件)。
- 连上 GitHub 后,它会自动监听
main或master分支,每次 push 就重新部署 - 默认给每个项目分配一个
.vercel.app或.netlify.app子域名,也支持绑定自有域名(需自行配置 DNS) - 支持设置环境变量、重定向规则(
_redirects)、头信息(_headers),对单页应用(SPA)友好 - 免费额度足够个人使用,但注意 Netlify 免费版每月带宽上限为 100GB,Vercel 是 100GB 出口流量 + 1000 分钟构建时间
- 如果 HTML 里用了相对路径(如
./css/style.css),部署后可能 404——检查是否因子路径(如部署在/my-app/下)导致路径解析错位,建议用绝对路径/css/style.css或配置base标签
自己买云服务器 + Nginx 托管(完全可控,但要操心更多)
适合需要运行后端、HTTPS 自定义、或必须用特定路径结构的场景,但门槛明显更高。
立即学习“前端免费学习笔记(深入)”;
- 选轻量应用服务器(如腾讯云轻量、阿里云 ECS 共享型)就够了,月付几十元,系统推荐 Ubuntu 22.04 LTS
- 安装 Nginx 后,把 HTML 文件放到
/var/www/html/(默认根目录),或修改nginx.conf中的root指向你自己的路径 - 必须手动配 HTTPS:用
certbot申请 Let’s Encrypt 证书,否则现代浏览器会标“不安全”;HTTP → HTTPS 重定向也要自己加配置 - 注意防火墙:Ubuntu 默认开
ufw,需执行sudo ufw allow 'Nginx Full',否则外网打不开 80/443 端口 - 域名解析要在 DNS 服务商处把 A 记录指向你的服务器公网 IP,且确保云厂商安全组也放行了 80/443
真正卡住人的往往不是“怎么传文件”,而是路径引用、协议切换(HTTP→HTTPS)、域名解析生效延迟、以及静态资源 404 却没看控制台 Network 面板。先确保本地双击打开 HTML 能正常跑,再上线;上线后第一件事,打开浏览器开发者工具,看 Console 和 Network 有没有红色报错。


















