生产环境无域名后端服务的HTTPS证书不被信任问题如何解决
解决方案
以下按适配生产环境的优先级排序:
方案1:现有域名子路径反向代理(最优选择,无需额外域名、无需后端HTTPS配置)
你可以直接利用已托管在cPanel的前端站点配置反向代理,将所有API请求通过现有域名转发到后端VPS,全程复用现有域名的有效HTTPS证书,完全不会触发证书不信任警告。
配置步骤:
- 登录cPanel后台,进入对应站点的「自定义Apache配置」(部分cPanel版本路径为「高级 → Apache 配置 → 包含编辑器」)
- 在站点的虚拟主机规则中添加以下反向代理配置:
ProxyPass "/api" "http://你的Linode VPS公网IP:后端服务端口" ProxyPassReverse "/api" "http://你的Linode VPS公网IP:后端服务端口"
- 保存配置后重启Apache服务,将前端代码中的API请求地址统一修改为
https://你的现有域名/api/接口路径即可。
该方案为服务端转发,浏览器不会直接和后端VPS通信,既解决了混合内容问题,也完全规避了后端证书信任问题。
方案2:使用现有域名的免费二级域名(无需额外购买新域名)
如果你不想配置反向代理,可以直接用现有主域名的二级域名做后端接口域名,不需要额外申请独立顶级域名:
- 在你的域名DNS解析后台新增一条A记录,将比如
api.你的现有域名.com指向Linode VPS的公网IP - 给该二级域名申请免费的Let's Encrypt可信SSL证书,替换掉当前Nginx使用的自签名证书即可,所有公网用户访问都不会触发证书警告。
方案3:仅内部使用场景:导入自签证书到信任存储
如果你的站点仅面向小范围固定用户(比如内部测试使用),可以将你生成自签名证书时的根CA证书,手动导入到所有访问用户的操作系统/浏览器的「受信任的根证书颁发机构」存储中,之后浏览器就不会再抛出证书不信任警告。
该方案完全不适用于公网面向普通用户的生产环境,普通用户不会手动导入你的自定义证书。
内容的提问来源于stack exchange,提问作者Shoaib Arif
相关产品推荐
相关产品推荐

