Heroku 上的自定义根域

2024-01-10

我有一个域 example.com,我想将其用于位于 example.herokuapp.com 的 Rails 应用程序,但我很困惑如何执行此操作。

赫罗库 说 https://devcenter.heroku.com/articles/custom-domains#root-domain

“区域顶端域(又名“裸”、“裸”或“根”域),例如, example.com,不支持使用传统 DNS A 记录 Heroku。”然后他们继续解释解决方法(使用 ALIAS 或 一个名字)。

我花了一个小时阅读这个主题(这里是SO和其他地方),但仍然没有理解这个问题。

对于如何为“假人”完成此任务,是否有其他方法或解释?


我会尝试一下这个问题,因为这是一个常见问题。

好的,假设您有一个域 example.com 并且您想使用 www.example.com 来托管您的网站。在传统托管中,您可能有一个已分配 IP 地址的虚拟服务器,在这种情况下,您将使用主机记录(在 DNS 控制面板中也称为 A 记录)将 www.example.com 映射到 IP 地址。在这种情况下,由于您现在已将 www.example.com 设置为固定 IP 地址,如果该 IP 地址发生更改,您将需要自行更新 DNS。

此外,使用传统托管,您可以将 example.com 设置为相同的 IP 地址,以便 www.example.com 和 example.com 适用于裸域。

好的,那么什么是 CNAME 记录。 CNAME 记录不是映射到 IP 地址,而是将该记录映射到另一个 DNS 条目。因此,www.example CNAME 到 example.herokuapp.com 意味着 Heroku 可以并且可能会移动 example.herokuapp.com 指向的位置,但您不必更新任何内容,因为您使用的是 CNAME 记录,并且 Heroku 是管理 example.herokuapp.com 指向的位置(可以并且可能是另一个 CNAME 或 IP 地址)。 CNAME 记录的问题在于它们无法指向 IP 地址,这对于 www.example.com 来说没问题,但对于 example.com 来说却是个问题。 Heroku 之前发布了用于裸域的 IP 地址,但当它们遭受 DDOS 攻击时,问题随之而来,并且无法用新的 IP 地址替换这些 IP 地址,因为它们是已发布的 IP 地址。对于新的欧盟区域,Heroku 不会发布用于裸域的 IP 地址。

几个 DNS 提供商(我知道的 DNSsimple 就是其中之一)所做的就是将自己的 ALIAS 记录添加到他们的 DNS 服务器中,以允许您将 CNAME 与裸域一起使用,这样 www.example.com 和 example.com 都将像 Heroku 现在支持的那样工作。如果您的 DNS 提供商不支持 ALIAS 记录,则值得将域移动到支持它的 DNS 提供商。 DNSsimple 还支持重定向记录,因此您可以在 DNS 提供商级别(而不是在应用程序层)将 www.example.com 重定向到 example.com。

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

Heroku 上的自定义根域 的相关文章

随机推荐

  • gRPC 客户端不处置 Channel

    我正在使用 gRPC 开发 net core 2 0 应用程序并发现一个问题 删除对 gRPC 客户端类实例的引用后 仍然存在使用资源 内存和处理器 的通道 示例代码 public class MyClient ClientBase pub
  • 软标签上的 scikit-learn 分类

    根据文档 可以指定不同的损失函数SGDClassifier 据我了解log loss is a cross entropy理论上可以处理软标签的损失函数 即以一些概率 0 1 给出的标签 问题是 是否可以使用SGDClassifier wi
  • 在WSO2 ESB 4.7.0中,我们可以在接收序列中进行JMS回滚吗?

    我已经在 WSO2 ESB 4 7 0 中配置了带有事务和 CLIENT ACKNOWLEDGE 的 Apache ActiveMQ axis2 xml 配置是
  • Intellisense 不工作 golang 测试文件

    标题说明了一切 我打开一个测试文件 类型 package 什么也没有出现 这不是延迟问题 这不是一个空包裹 如何开启智能感知 更新 我已经向 VSCode Golang 团队提交了错误通知单 当我们找到更多信息时 我会在这里报告 https
  • ctypes:将字符串转换为函数?

    我正在读这篇文章在笔测试期间逃避防病毒软件的技巧 http pen testing sans org blog pen testing 2011 10 13 tips for evading anti virus during pen te
  • Restful Web 服务认证

    我有一个 Restful Web 服务 API 正在被不同的第 3 方使用 该 API 的一部分受到限制 您需要用户名 密码才能访问它 我想知道实施身份验证的最佳方法是什么 我使用的是 https 因此通信是加密的 我有两个想法 在用户开始
  • Qt 右键单击​​ QListWidget 打开上下文菜单并删除项目

    我想知道当我右键单击表格项目时如何打开弹出菜单 在弹出菜单中 应给出一些操作 例如添加和删除 这将创建新行或删除所选行 我是 Qt 世界的新手 所以如果有人能给我完整的详细信息 如果可能的话 提供代码 那么我将非常感谢他 她 谢谢 My g
  • Excel VBA:工作表保护未按预期工作

    使用 VBA 我试图禁止插入和删除行和列 同时允许用户编辑单元格内容 我希望以下调用能够解决问题 ActiveSheet Protect Password SomePassword AllowInsertingColumns False A
  • ASP.NET 2.5 前缀 ctl00 和 ASP.NET 4 不前缀 ctl00

    有谁知道为什么 ASP NET 4 放弃了ctl00ASP 控件上的前缀 有没有我错过的设置 在 ASP NET 4 0 中 他们引入了对更简洁的 HTML 语法的支持 你可以阅读相关内容在 Scott Gu 的博客 http weblog
  • 原生 Javascript 页面加载消息?

    我想要一个页面阻塞 加载脚本 该脚本将覆盖整个页面并在加载所有资源时显示 正在加载 消息 以避免无样式内容的闪烁等 我基本上想要类似的东西jQuery 的 BlockUI http jquery malsup com block page的
  • python 中的高斯-勒让德算法

    我需要一些帮助来计算 Pi 我正在尝试编写一个 python 程序来将 Pi 计算为 X 位数字 我已经尝试了 python 邮件列表中的几个 但它对我的使用来说太慢了 我读过有关高斯 勒让德算法 http en wikipedia org
  • 《使用 Rails 进行敏捷 Web 开发》一书:CSS 未应用

    我刚刚通过阅读著名的实用书架书籍 Agile Web Development with Rails 开始深入 Rails 的世界 到目前为止 我确实遵循了所有示例 但现在我被困在第 85 页 pdf 版本 其中应该将自定义 CSS 添加到项
  • XSLT - 从 URL 获取文件名

    我需要从 URL 获取文件名 URL 是动态的 并且斜杠的数量可以是不同的数量 我使用 xslt 1 0 所以寻找需要的东西 http DevSite sites name Lists note Attachments 3 image jp
  • 访问 NODE_ENV 在前端代码中有意义吗?

    我有一个正在部署的反应 节点应用程序 其中一个组件尝试访问 NODE ENV 以确定要使用的主机 URL localhost 或 heroku 我现在意识到 即使 NODE ENV 被设置为生产环境 它在浏览器上下文中始终是 未定义 的 因
  • Visual Studio 2017 ASP.NET MVC 核心模板中的 Bower 替换

    最近 我使用 Visual Studio 2017 15 6 3 从头开始 创建了一个 ASP NET MVC Core 项目 我发现了常用的 JavaScript 框架 引导程序 jquery jquery 验证 jquery 验证 不显
  • 最好使用私有方法还是受保护方法?

    在我的许多 PHP 项目中 我最终得到的类具有我不打算扩展的非公共函数 最好将它们声明为受保护的还是私有的 我可以从两种角度看待争论 将它们设为私有是一种更为保守的方法 但可以说 如果我希望扩展该方法 并且它清楚地表明哪些方法是由基类扩展的
  • 在 Rhino 中作为 JavaScript 对象访问 java 地图和列表

    有没有办法在 Rhino 中以 JavaScript 对象的形式访问 Java 地图和列表 我有一个 Map 其中仅包含其他映射以及基元和字符串列表 我想将其传递给 Rhino 脚本并对其执行操作 并将修改后的对象返回到 Java 但因为它
  • 具有多个国家/地区代码顶级域名 (ccTLD) 的 Facebook 应用

    假设我们有一个通过以下域提供服务的 Web 应用程序 www something com www something co uk www something de 我想知道是否有一种方法可以验证用户的 Facebook 帐户 从这些不同的域
  • 从开始日期到结束日期的每个日期的行

    我想做的是记录如下所示 Start DT End DT ID 4 5 2013 4 9 2013 1 并将其更改为如下所示 DT ID 4 5 2013 1 4 6 2013 1 4 7 2013 1 4 8 2013 1 4 9 2013
  • Heroku 上的自定义根域

    我有一个域 example com 我想将其用于位于 example herokuapp com 的 Rails 应用程序 但我很困惑如何执行此操作 赫罗库 说 https devcenter heroku com articles cus