从 localhost 到上线:一次部署要打通哪些环节

2026-09-21

滚动
596 字
3 分钟
从 localhost 到上线:一次部署要打通哪些环节

“本地能运行”和“用户能访问”,中间隔着的不只是一次上传。尤其当前端、后端和数据库分开运行时,应该把整个请求经过的路径连起来看。

先确认应用真的在监听#

排查网络错误时,最先确认的是服务进程和监听端口。配置文件写了端口,并不等于应用已经启动成功。数据库连接失败、环境变量缺失或者 Java 运行版本不匹配,都可能让进程在启动阶段退出。

Linux 环境下,可以先查看监听信息,然后从服务器本机发起请求。下面的端口仅作示例,应替换成项目实际配置。

Terminal window
ss -ltnp
curl -I --max-time 5 http://127.0.0.1:8082/

根路径返回 404 或 401,也不一定表示应用没启动。需要结合项目真实的路由和日志判断。连接被拒绝,则应优先检查进程是否存活、端口是否一致。

再看反向代理如何转发#

浏览器请求项目域名后,Nginx 可以直接返回前端静态文件,再把 /api 等路径转给后端。此时浏览器访问的是域名,后端可以只监听服务器本机。

需要核对两个路径:浏览器请求的 URL,以及后端最终收到的 URL。proxy_pass 的路径写法会影响转发结果,不能只看端口是否正确。

前端地址不能停留在 localhost#

开发时把接口地址写成 localhost 很方便,但构建产物一旦进入浏览器环境,这个地址就指向访问者自己的电脑,而不是服务器。

生产环境应使用明确的 API 域名或同域路径,并在部署前检查构建变量是否真正进入产物。仅修改开发环境的 .env,不一定能改变已经构建的前端文件。

最后做一次完整验收#

部署完成后,按真实访问路径逐一确认:

  1. DNS 是否解析到目标服务器。
  2. HTTPS 证书是否有效。
  3. 静态资源是否返回成功。
  4. 前端请求是否能到达后端。
  5. 后端是否能连接数据库。
  6. 进程重启后服务是否仍能自动恢复。

每一步都成功,才算是从 localhost 真正走到了线上。