You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GCP负载均衡HTTP访问异常,如何配置HTTP自动跳转HTTPS

解决方案

方案1:GCP负载均衡侧配置HTTP重定向(最推荐,性能最优)

无需修改后端服务代码,直接通过负载均衡原生规则实现,跳转性能更高,运维成本更低:

  • 进入GCP控制台「网络服务 > 负载均衡」页面,找到你当前使用的HTTPS负载均衡,点击编辑
  • 切换到「前端和证书」标签,新增一个前端配置:
    • 协议选择HTTP
    • 端口设置为80
    • 公网IP选择和现有HTTPS前端一致的IP,避免DNS解析不一致
  • 切换到「主机和路径规则」标签,新增一条全局匹配规则:
    • 匹配范围选择所有主机、所有路径
    • 动作选择「将客户端重定向到不同的主机/路径」
    • 重定向参数设置:
      • 目标协议改为HTTPS
      • 目标端口改为443
      • 勾选保留原始请求的主机、路径、查询参数
      • 响应状态码选择301(永久重定向),更有利于SEO收录
  • 保存负载均衡配置,等待1-2分钟规则生效后,清空浏览器缓存测试即可。

方案2:后端Node.js服务侧配置跳转(可选)

如果不方便调整负载均衡配置,也可以在Node.js代码中添加跳转逻辑:

// 放在所有路由之前注册中间件
app.use((req, res, next) => {
  // 通过负载均衡注入的x-forwarded-proto头判断原始请求协议
  if (req.headers['x-forwarded-proto'] === 'http') {
    return res.redirect(301, `https://${req.headers.host}${req.url}`);
  }
  next();
});

注意:不能直接通过req.protocol判断请求协议,负载均衡到后端VM的内部请求本身走HTTP,直接读取req.protocol永远返回HTTP,会导致判断逻辑失效。

内容的提问来源于stack exchange,提问作者Sam Leurs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 13:21:01