所以我在 Dreamhost 上注册了一个域,它显然不进行递归查找,并且在 Heroku 上有一个应用程序。Heroku 应用程序始终配置为使用 CNAME 记录到proxy.heroku.com.
所以:
Authoritative DNS: ns1.dreamhost.com (for foo.com)
CNAME record: app.foo.com -> proxy.heroku.com
Resolves to: Set of A records for EC2 IPs
Run Code Online (Sandbox Code Playgroud)
一些试图从 Windows Server 2003 DNS 服务器后面连接到该应用程序的人告诉我,它以不同的方式处理 SERVFAIL 并且无法解析 DNS。我试图了解这是否真的是我或他们的配置问题,特别是根据标题:
域的权威 DNS 服务器是否必须递归以允许 CNAME 记录指向其他域?
我正在构建一个托管在 Heroku 上的应用程序。Heroku 建议Apex Domains 是一个非常糟糕的主意——他们建议使用 CNAME 记录和像 Zerigo 或 DNSSimple 这样的解决方法服务。但是,我使用过的所有其他主机似乎都没有问题。EngineYard 包含在该列表中,并且它们还托管在 Amazon EC2 上。
将来我是否应该放弃使用 A 记录,转而使用带有 Zerigo 变通方法的 CNAME?这真的只是高可用性应用程序的问题吗?Heroku 只是偏执吗?
著名的 PaaS 提供商Heroku为 SSL 问题提供了多种解决方案。其中之一是名为Hostname Based SSL的产品
这不是 SNI。他们声称它适用于任何配置的每个浏览器,但还有其他缺点,主要是(引用文档):
基于主机名的 SSL 不适用于根域,因为它依赖于自定义域名的 CNAME 别名。
主机名 SSL 仅适用于一个域。例如,www.domain.com 可以工作,但如果将 secure.domain.com 的第二个证书添加到应用程序中,它将无法工作。
我们基于主机名的 SSL 产品目前去除了一些 HTTP 标头;例如,当您的应用程序需要查看客户端的 IP 时,这可能是一个问题。
使用这个自定义构建解决方案,Heorku 可以在一个 IP 地址上为多个 SSL 站点提供服务,并且正如他们声称的那样,它可以跨任何地方工作。
谁能解释这个解决方案的技术方面和这个产品背后的技术?
我想通过使用位置块的 nginx 配置在我的应用程序中强制使用 HTTPS 和顶点域(例如https://example.com)。我目前有以下 nginx_app.conf 文件(适用于顶点和 www 子域,以及 http 和 https):
location / {
try_files $uri @rewriteapp;
}
location @rewriteapp {
rewrite ^(.*)$ /app.php/$1 last;
}
location ~ ^/(app|config)\.php(/|$) {
# fastcgi_pass directives go here...
}
Run Code Online (Sandbox Code Playgroud)
为了强制使用顶点域和 https,我尝试使用 if 语句如下,检查 $scheme 和 $host 变量,但我收到一个错误,表明页面没有正确重定向。我还添加了一个 HSTS 指令。
location / {
if ($scheme = http) {
rewrite ^/(.*) https://$host/$1 permanent;
}
if ($host = www.example.com) {
rewrite ^/(.*) https://example.com/$1 permanent;
}
try_files $uri @rewriteapp;
}
location @rewriteapp …Run Code Online (Sandbox Code Playgroud) 发电子邮件
我想使用 my_domain.com 地址,并克服我的域提供商 Gandi 的 5 封邮件/分钟限制。我的应用程序托管在 Heroku 上。为此,我正在考虑两种选择:
--> 你会推荐哪个选项?
接收电子邮件
第一的
a) 我覆盖了 Gandi 的 DNS 服务器设置,将它们替换为 Zerigo 的 DNS。这允许我将向 my_domain.com 发出的所有 DNS 请求重定向到我在 Heroku 上托管的应用程序。所以,现在不是 DNS1:a.ns.gandi.net,而是:DNS1:a.ns.zerigo.net ...
b)我在Zerigo里面添加:host=www.my_domain.com data=proxi.heroku.com
==> 它在网络上运行良好(my_domain 请求被重定向到我的 heroku 应用程序)但我的 Gandi 邮箱中没有收到传入的电子邮件,就像更改 DNS 设置之前的情况一样。
第二
我想我应该做的是将 MX 记录添加到 Zerigo,以便正确处理传入的电子邮件,如下所述:https ://www.zerigo.com/docs/managed-dns/creating_your_first_domain
因此,我添加了一条 MX 记录和一条附加记录,如上面网站所述,我尝试了两个选项,但都不起作用:
a) MX 记录:HOST=my_domain.com,DATA=mail.my_domain.com + CNAME 记录:HOST=mail.my_domain.com,DATA=proxi.heroku.com
b) MX 记录:HOST=my_domain.com,DATA=mail.my_domain.com + CNAME 记录:HOST=mail.my_domain.com,DATA=mail.gandi.net
所以,我猜我把事情搞混了,我真的很困惑......正如你可能理解的那样,我在这方面有点新手,所以任何帮助/澄清将不胜感激!
我正在构建一个多租户 CMS 应用程序,它将托管在 Heroku(使用 Amazon EC2 等)上。我还将添加通过应用程序注册/转移域的功能。我想为我的客户添加能够包含电子邮件托管和通过应用程序导入/管理电子邮件地址的功能。
我一直在研究开源邮件服务器(例如 Postfix)和托管电子邮件的可行性。我不认为 Amazon EC2 允许托管您自己的电子邮件服务器,所以我想我也会寻找一个地方来托管这个电子邮件服务器。关于为多个客户/域托管电子邮件服务器,您能给我什么样的建议?
周五我在 Heroku 上为一个小站点配置了一个自定义域。它当时有效,但现在,它坏了。主持人是nedgros.de。nedgros.herokuapp.com有地址 23.21.239.236。
是没有解析到正确的应用程序。如何配置 DNS 以遵循 Dyno 动态?
heroku ×7
cname-record ×2
email ×2
nginx ×2
a-record ×1
amazon-ec2 ×1
apache-2.2 ×1
dreamhost ×1
email-server ×1
hosting ×1
mx-record ×1
recursive ×1
ssl ×1
web ×1