Heroku 从 example.com 重定向到 www.example.com 使用 AWS 保留 HTTPS

2024-01-01

我有一个使用 SSL 证书设置的 Heroku 应用程序,但我的 DNS 不允许 Apex 级别的 CNAME 记录。这意味着,我无法将 A 记录指向 Heroku 应用程序 URL(A 级记录只能是 IP 地址,Heroku 无法提供静态 IP)。

还有其他方法(在堆栈上和 Heroku 的指南上)建议使用其他 DNS 提供商,但我想尝试使用 AWS(特别是 Route53)解决此问题,同时还在 SSL 域中保留我们的 https:// 。

我找到了一些关于如何执行此操作的指南,但似乎存在复杂性(标头混乱,无法保留 https 等)。我将在下面提供一个答案,概述我是如何实现这一目标的,但鼓励讨论我的解决方案可能会产生什么影响。


我在 Heroku 网站上发现了这个指南:为您的 Heroku 应用程序配置 Amazon Route 53 DNS https://devcenter.heroku.com/articles/route-53

该解决方案的概要是创建一个 S3 存储桶作为静态网站主机,仅重定向到您的 Route53 托管区域。以下是基本步骤:

  1. 使用您的域 (example.com) 在 Route 53 管理控制台上创建新的托管区域
  2. 为 www.example.com 创建一个 CNAME 条目,并将值设置为您的 heroku 自定义域 (www.example.com.herokudns.com)
  3. 创建与您的域名(example.com)同名的 S3 存储桶,并将其设置为静态网站主机
  4. In the settings for static website hosting set this to "Redirect Requests" and set the target as www.example.com and the protocol to https Settings for s3 bucket static website hosting
  5. 返回 Route 53 并添加 A Level 别名,目标为您新创建的存储桶
  6. 最后将您的 DN 提供商名称服务器指向新的 Route 53 托管区域(您可以从管理控制台的侧面板获取名称服务器列表)

就是这样!在您的名称服务器上的 TTL 到期后,您的站点应该启动并运行,并且 example.com 和 www.example.com

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Heroku 从 example.com 重定向到 www.example.com 使用 AWS 保留 HTTPS 的相关文章

  • heroku 上的 bitbucket 私有存储库

    我有一个需要 gem 的 Rails 应用程序 我将这个 gem 托管在私有存储库的 bitbucket 上 在我的 Gemfile 中 我添加了 gem 如下所示 gem my gem git gt gi email protected
  • 无法显示由 Fine-uploader 上传到 Amazon s3 的图像

    我现在尝试设置fineuploader s3以显示在aws服务器上成功上传的文件的图像 如示例页面上所做的那样 http fineuploader com s3 demo http fineuploader com s3 demo 我 仍然
  • AWS boto3 page_iterator.search 无法将 datetime.datetime 与 str 进行比较

    尝试捕获 s3 上的增量文件 上次处理后创建的文件 为此 请使用 boto3 过滤迭代器通过查询 LastModified 值而不是返回所有文件列表并在客户端站点上进行过滤 根据http jmespath org http jmespath
  • AWS Lambda 和 S3 - 上传的 pdf 文件为空/损坏

    我有一个 Spring 应用程序 在 AWS Lambda 上运行 它获取文件并将其上传到 AWS S3 Spring控制器发送一个MultipartFile到我的方法 使用 Amazon API Gateway 将其上传到 AWS S3
  • JavaScript 可以检测用户的浏览器是否支持 gzip 吗?

    我可以使用 JavaScript 来检测用户的浏览器是否支持 gzip 压缩内容 客户端 而不是 Node js 或类似内容 我正在尝试支持以下边缘情况 有很多可能的文件可以加载到特定的 Web 应用程序上 最好在应用程序运行时根据需要加载
  • 如何在亚马逊 EC2 上调试 python 网站?

    我是网络开发新手 这可能是一个愚蠢的问题 但我找不到可以帮助我的确切答案或教程 我工作的公司的网站 用 python django 构建 托管在亚马逊 EC2 上 我想知道从哪里开始调试这个生产站点并检查存储在那里的日志和数据库 我有帐户信
  • Heroku Toolbelt 在多个帐户之间切换

    我想知道使用 heroku 工具带在 heroku 帐户之间切换的最佳方法是什么 我习惯了拥有一个个人 Heroku 帐户 它是我所有专业 Heroku 应用程序的协作者 问题是 当我想要做出一些会产生财务影响的更改时 例如添加 删除插件
  • 尝试访问 iframe 内容(不同子域);尝试设置 CORS

    我将文件托管在domain com 其中包含一个 iframe 其文档托管在s3 domain com 我正在尝试访问 iframe 的内容 但收到以下信息 不安全的 JavaScript 尝试通过 URL 访问框架http s3 doma
  • 如何在heroku上运行一个简单的文件

    假设我已经在 github 上安装了 Rails 应用程序 并且正在 heroku 上部署 github 存储库 我遇到过这样的情况 我有一个包含一堆单词的简单文本文件 它在我的 github 存储库中 我想将这些单词 使用简单的 ruby
  • 将大型高清视频文件上传到 Amazon Web Services S3

    最终目标 将大型视频文件 内容制作者将是专业用户 因此他们的一点额外工作并不是一个巨大的负担 然而 对他们 和我 来说 保持尽可能简单是理想的 如果可以使用网络表单来启动那就最好了 内容制作者不会有数百个 因此可以投入一些额外的时间或精力为
  • 使用 Rails 应用程序推送到 Heroku 时如何忽略文件夹和文件?

    我有一个Rails 3 2 8应用程序 我不想推送我的spec文件夹和test登录 Heroku 我该怎么做 如果有一个staging偏僻的 Thanks 你可以把它们放进去 gitignore 但这会将它们从您的整个存储库中排除 更好的解
  • Heroku 启动超时(错误 R10)

    每次我启动应用程序时 如果没有以下内容 它就无法超过 60 秒点 2012 05 06T22 41 11 00 00 heroku web 1 Stopping process with SIGKILL 2012 05 06T22 41 1
  • 将表列添加到 Group by 子句 - Ruby on Rails - Postgresql

    我正在尝试使用 Heroku 显然 Postgresql 对于聚合函数来说比 SQL 严格得多 当我推送到 Heroku 时 我收到一条错误消息 内容如下 关于另一个问题 https stackoverflow com questions
  • AWS S3 JavaScript SDK - 网络错误:网络故障

    我正在尝试使用 AWS 在浏览器网页的示例中提供的示例 并且我不断收到NetworkingError Network Failure错误 这是我正在使用的
  • 如何在 Heroku 中安装 NLTK 模块

    嘿 我想在我的 Heroku 服务器上安装 NLTK pos tag 我该怎么办呢 请给我一些步骤 因为我是 Heroku 服务器系统的新手 我刚刚添加了官方nltk支持构建包 只需添加一个nltk txt文件包含要安装的语料库列表 一切都
  • 我的 s3 存储桶如何使用 nginx 在不同文件夹中托管多个网站?

    我在 Amazon 上有一个 s3 Cloudfront 解决方案 我想在存储桶内的不同文件夹中托管不同的网站 并通过以下两种方式之一访问它们 子域 gt mywebsite1 mydomain com 或者 路径 gt www mydom
  • S3 的 Rails 回形针默认图像

    我尝试在应用程序中使用default url 但我使用S3 存储图像 我不确定我需要在那里输入什么 URL 或者我是否必须创建一个假图像才能将所有内容放在那里 由于我的图像总是通过 S3 渲染 所以我不知道如果我只是在公共文件夹中放入一些默
  • Jquery 文件上传 - 如何限制上传的文件数量

    我正在尝试从 blueimp 进行 Jquery 文件上传 该文档说我应该能够使用 maxNumberOfFiles 设置限制要上传的文件数量 然而 这似乎不适用于我的情况 其他诸如acceptFileTypes loadImageMaxF
  • Heroku、NodeJs 和 React 问题:SCRIPT5007:无法获取未定义或空引用的属性“应用”

    我猜我对 Polyfill 有一个奇怪的问题 我在我的应用程序中使用了 MERN stack 并推送到了 Heroku 由于某种原因 在我的 Chrome 计算机上我可以查看该网站 但是 在其他计算机上我收到空白页面并在控制台中出现错误 S
  • heroku node.js bash:节点:找不到命令

    在 cedar stack 上的 heroku 上部署我的应用程序似乎存在一个奇怪的问题 我的节点进程甚至没有被调用 我的Proc文件如下 web node web js 和我的 package json 文件 name fuuzik ve

随机推荐