为你的项目配置 HTTPS
总体概念
我们现在要做的事情,其本质上只有 5 步:
- 域名解析到你的服务器
- 服务器开放 80 和 443 端口
- 申请一张证书
- Nginx 配置 443 + 证书
- 把 80 跳转到 443
这样以后用户访问:
http://your-domain.com→ 自动跳到https://your-domain.com- Nginx 用证书和浏览器建立加密连接
- 前端页面通过 HTTPS 打开
/api请求由 Nginx 转发到 Gin
我的建议
对于新手而言,往往可以这样处理:
- Nginx 负责 HTTPS
- 后端项目 继续跑 HTTP 内部端口,例如
127.0.0.1:8080 - Vue 前端走同域名
/api - 不要让 后端项目 自己配证书
原因很简单:证书只维护在 Nginx,既可以只配置一处,也最容易排错。
前期准备
第 1 步:确认你的域名已经指向这台服务器
你要确认:
- 你的域名 A 记录已经解析到服务器公网 IP
- 以后访问的网站,就是这个域名,不是 IP
1、获取你的公网 IP:
在云服务器控制台 → 云服务器 ECS → 实例 → 点进你的服务器实例查看。
2、解析
接下来的操作,是需要你拥有一个自己的域名,并认证过。在域名服务控制台点击解析,添加记录即可。(作用:使这个域名指向你的公网 IP)
提醒:因为 HTTPS 证书是给域名用的,不是给裸 IP 用的。如果你用浏览器直接访问 https://你的公网 IP,大概率会证书不匹配。
第 2 步:开放 80 和 443 端口
你要确保:
- 云服务器安全组放行
80/tcp - 云服务器安全组放行
443/tcp - 服务器本机防火墙没有拦截
第 3 步:先确认当前 Nginx 和 后端项目 是怎么跑的
你现在先自己核对这几个点:
前端
Vue/Vite 是否已经打包过,例如:
npm run build
然后 Nginx 是否已经在提供 dist/ 目录。
后端
Gin 是否监听一个端口,比如:
r.Run("127.0.0.1:8080")
API 请求地址
前端有没有写死这种地址:
http://your-domain.com/api


