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

Google Cloud Run域名映射及www/非www、HTTP转HTTPS重定向问题

Google Cloud Run 多域名重定向配置方案

你的三个疑问解答

  • 直接给同一容器加www.example.com域名映射但不做重定向:绝对不可取,搜索引擎会把带www和不带www的域名判定为重复内容页面,直接拉低SEO排名,必须做301永久重定向。
  • 仅添加www到example.com的CNAME记录而不配置Cloud Run域名映射:完全行不通,Cloud Run需要明确绑定域名映射才能路由请求到你的服务,这种情况下用户访问www.example.com只会得到错误页面,根本到不了你的应用。
  • HTTP转HTTPS的重定向:必须配置,不管是用Cloud Run自带功能还是应用代码处理,否则HTTP版本的页面会被判定为重复内容,还存在数据传输的安全风险。

实现全量重定向到https://example.com的方案

方案1:利用Cloud Run域名映射自带重定向(推荐,无需改代码)

  1. 确认主域名example.com已完成Cloud Run域名映射,且HTTPS配置正常。
  2. 新增www.example.com的域名映射:
    • 登录Google Cloud控制台,进入Cloud Run服务的「域名映射」页面。
    • 点击「添加映射」,输入www.example.com,选择你的目标服务。
    • 在配置中开启重定向功能,目标地址设为https://example.com,重定向类型选「301永久重定向」(对SEO最友好)。
  3. 配置DNS记录:给www.example.com添加CNAME记录,指向ghs.google.com(和主域名的DNS配置一致)。
  4. HTTP转HTTPS:Cloud Run对已绑定的自定义域名会自动处理HTTP到HTTPS的重定向,无需额外配置。

方案2:在应用代码中处理重定向(适合需要自定义逻辑的场景)

如果需要更灵活的重定向规则,可以在应用代码中添加逻辑,以下是Node.js/Express的示例:

app.use((req, res, next) => {
  // 检测是否是www域名或HTTP协议
  const shouldRedirect = req.hostname === 'www.example.com' || req.protocol === 'http';
  if (shouldRedirect) {
    // 重定向到https://example.com,保留原请求路径
    const targetUrl = `https://example.com${req.originalUrl}`;
    return res.redirect(301, targetUrl);
  }
  next();
});
  • 注意:这种方式需要先完成www.example.com的Cloud Run域名映射和DNS配置,确保请求能到达你的应用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 23:03:24