深蓝黑背景品牌封面:左侧大标题「网站从 0 到上线」,副标题「域名、部署、HTTPS 与优化的全流程」;右侧原创装饰——一段五级台阶自左下向右上攀升,台阶立面依次标注「域名」「服务器」「部署」「HTTPS」「优化」,顶端插着一面小旗;左上标注「知识专栏 · 建站部署」,右上标注「Day 03 · 10-11」 图 1:本文封面,五关台阶就是这篇文章的路线图。

很多人第一次做网站时的体验是这样的:代码本地跑得好好的,买了域名和服务器之后就开始抓瞎——域名怎么指到服务器?代码怎么上去?为什么浏览器提示「不安全」?其实上线这件事不神秘,它是一条固定顺序的五关流程,每关都有明确的「过关标准」。

核心结论一句话

上线 = 域名与解析 → 服务器准备 → 代码部署 → HTTPS 证书 → 基础优化。五关有严格顺序,前一关没过不要进下一关;每关留下的检查命令,就是你日后排障的地图。

第一关:域名与解析。

域名注册商买到手的只是一个名字,它需要通过 DNS 解析指向你服务器的 IP,浏览器才找得到你的站。这一步的动作是:在 DNS 服务商那里加一条 A 记录,主机记录填 @(裸域名)或 www,记录值填服务器 IP。解析生效有缓存延迟,几分钟到几小时不等。

过关标准:在本机执行 dig example.com(macOS 与 Linux 自带,Windows 可用 nslookup),返回的 ANSWER 段里能看到你的服务器 IP。解析没生效就急着部署,后面每一步都会被卡住,而且你会分不清问题出在哪一层。

第二关:服务器准备。

拿到一台云服务器,先别急着传代码,三件事按顺序做:选对配置——个人小站入门款就够,流量涨了再升;装好运行环境——你的站点需要什么运行时、什么数据库,一次性装齐并记下版本;收紧防火墙——安全组或防火墙只放行必要端口,通常是 80 和 443 给网站、22 给自己登录,数据库端口一律不对公网开放。

过关标准:从外网只能访问你主动放行的端口,其余全部不通。这一步偷的懒,日后都会以安全事故的形式还回来。

第三关:代码部署。

代码上服务器有两条路:小规模项目直接打包上传、解压、启动;正经项目走流水线——推到代码仓库,由构建部署工具自动拉取、构建、发布。无论哪条路,都必须解决同一个问题:进程守护。直接 node app.js 启动的进程,终端一关就没了,服务器重启更不会自己活过来。用进程管理工具托管,并把它注册成开机自启,服务才算真正「部署」而不是「试跑」。

过关标准:重启服务器后什么都不用动,网站自己恢复访问。这是区分「能跑」和「上线了」的分水岭。

第四关:HTTPS 证书。

没有 HTTPS,浏览器地址栏会给访客挂「不安全」警告,搜索引擎也会降权。现在的标准做法是申请免费证书:Let's Encrypt 这类免费证书机构通过 ACME 协议自动化签发,在服务器上跑一个 ACME 客户端(官方推荐 Certbot)即可完成申请;证书有有效期,所以必须配置自动续期,而不是等过期了手动救火。如果用了托管平台或 CDN,很多会自带证书托管,这一步甚至被平台代劳。

过关标准:浏览器访问 https:// 开头的地址没有任何警告,并把 http 访问 301 跳转到 https,只留一个入口。

流程图:网站上线分五关横向推进——①域名与解析:注册域名、把 A 记录指向服务器 IP,检查点是 dig 能解析到正确 IP;②服务器准备:选配置、装环境、开防火墙白名单,检查点是只放必要端口;③代码部署:代码上传或流水线发布、进程守护,检查点是重启后服务自动拉起;④HTTPS 证书:申请免费证书、配置自动续期,检查点是浏览器不报警;⑤基础优化:开启压缩、静态资源缓存与 CDN,检查点是首屏秒开。底部提示:五关有严格顺序,前一关没过不要进下一关;每关留下的检查命令就是排障地图 图 2:五关流程、每关动作与过关检查点。

第五关:基础优化。

网站能访问之后,还有三件花小钱办大事的优化。一是开启压缩:文本资源(HTML、CSS、JS)走 gzip 或 Brotli 压缩,传输体积立刻小一个量级,主流 Web 服务器和托管平台都有现成开关。二是静态资源缓存:给图片、样式、脚本配上缓存头,回头客不用再下载一遍。三是 CDN:把静态资源分发到离访客近的节点,跨地域访问的速度差异会明显收敛。

过关标准:清空浏览器缓存后首次打开,首屏在常规家庭网络下秒开。不必追求极致分数,这一关的目标是「不拖后腿」。

三个常见误区

误区一:跳关操作。解析还没生效就开始怀疑代码部署错了,在错误的层面排查一下午。五关顺序的意义就在于:每一关的检查点通过后,问题范围就被锁死在当前关。

误区二:把「本机访问通」当上线。在服务器上 curl 本机通,不代表外网通——防火墙、安全组、域名解析任何一环都可能拦着。验证永远要从外网发起。

误区三:上线当天才想 HTTPS 和进程守护。这两件事都是「第一次配麻烦、之后零成本」的类型,第三关部署时就该顺手配好,而不是等浏览器报警、进程挂掉再补。

给你的行动建议

如果你手上有一个还没上线的小项目,今天就可以按图索骥:先在 DNS 里加好 A 记录并用 dig 确认,再检查防火墙只放行必要端口,然后给服务配上进程守护并亲手重启一次服务器验证自动拉起。这三步走完,你的项目就已经越过了上线流程里最容易卡住新手的三关。

你的网站第一次上线时,卡在了哪一关?欢迎分享你的踩坑经历。