Heroku应用程序链接到域提供商网站



我遇到了麻烦。

我有这个网站,该网站在Heroku上使用另一个提供商的自定义域名运行。我用正确的DNS在2之间建立了连接。

它似乎可以在我的浏览器上工作,但在其他计算机上不起作用,清除了我的高速缓存后,它也无法对地雷工作。当他们访问网站时,它显示了域提供者网站。

起初,我认为这与SSL有关,因为我遇到了错误,因为您的连接不是私人的。然后我将 config_force_ssl 更改为false:

 # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
  config.force_ssl = false

看来,我的域提供商DNS设置中的A记录链接到IP地址,而Heroku不支持IP地址。否则它仍然可能与SSL有关。

这是我的域提供商DNS

ftp.example.io - CNAME - example.io
www.example.io - CNAME - example-example.herokuapp.com
example.io - A - 91.184.0.100
localhost.example.io - A - 91.184.0.100
webmail.example.io - A - 91.184.0.100
*.example.io - A - 91.184.0.100
mail.example.io - A - 91.184.0.94

这是我在Heroku 上添加的域:

Domain name: example.io
DNS Target: example-example.herokuapp.com

我不再知道它可能是什么。任何帮助将不胜感激

您应该在DNS提供商:https://devcenter.heroku.com/articles/custom-domains

上创建CNAME记录

Heroku不支持DNS。但是,您可以添加自定义域和子域,以及从域托管设置,重定向到Heroku应用程序。这是YouTube

的小镜头
#for domain
$ heroku domains:add www.example.com`
Adding www.example.com to example... done
>
#for subdomain
$ heroku domains:add blog.example.com`
Adding blog.example.com to example... done

将heroku域名配置为 www.example.io

oké我解决了问题。对于那些挣扎的人来说,这就是我的做法:

步骤1

创建一个Cloudflare帐户,并将购买的域添加到Cloudflare和 传输DNS设置'

步骤2

将您的域添加到Heroku面板中。在Heroku网站上,登录,去 要"设置"按'添加自定义域' - Add both your domain 'www.example.com' and your root domain 'example.com'

步骤3

如果您没有在初始域上更改名称服务器 提供者指向CloudFlare名称服务器,请立即进行。你 可以找到在您的Cloudflare名称服务器上分配给您的 'DNS' -> 'cloudflare name servers'下的CloudFlare面板

步骤4

在您的Cloudflare帐户和remove all records (A, CNAME, ALIAS,TXT etc..).上转到" DNS" 现在添加CNAME记录。该名称应为您的网站" www.example.com"(带有www),它应该指向您的Heroku应用程序example-example.herokuapp.com

步骤5

创建一个Google业务帐户。并跟随 Google给出的验证步骤。

步骤6

admin.google.com登录并转到'domains'。如果看不到 "域"单击"更多元素"。现在单击" change redirect",然后 使您的根域" example.com"重定向到" www.example.com"。

步骤7

转到您的Cloudflare面板,然后转到" DNS",现在add 4 'A' Records。 - " A"记录的所有4个都应具有您的根域的名称'example.com',它们应指向216.239.32.21216.239.34.21216.239.36.21216.239.38.21,是IP Google给出的地址使重定向起作用。

旁注

在Cloudflare上,需要将" A"记录状态设置为" DNS" 以及" DNS和HTTP代理(CDN)"的" cname"记录状态'

步骤8

在您的Rails应用程序上,请访问production.rb并确保 config.action_mailer.default_url_options = { host: 'https://example-example.herokuapp.com' }设置为 config.action_mailer.default_url_options = { host: 'example-example.herokuapp.com' }因此只需删除'https://'。

以及config.force_ssl应该是false

完成后,请确保将结果上传到Heroku。

步骤9

在Cloudflare上转到"加密",并确保SSL设置为" fixible", 如果不是,请立即更改,可能需要一些时间才能通过Cloudflare完成更改。

恭喜!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

这一点 您的根域和整个域。

额外

仅当您想要gmail的业务电子邮件(例如info@example.com)

在CloudFlare上转到" DNS"并添加5 'MX' Records

  1. example.com(您的根域) - 用priority 1指向aspmx.l.google.com
  2. example.com(您的根域) - 用priority 5指向alt1.aspmx.l.google.com
  3. example.com(您的根域) - 用priority 5指向alt2.aspmx.l.google.com
  4. example.com(您的根域) - 用priority 10指向alt3.aspmx.l.google.com
  5. example.com(您的根域) - 用priority 10指向alt4.aspmx.l.google.com

注意: TTL应将1 hour'设置为all 'MX' records

现在去那里,是您自己最好的版本!

相关内容

最新更新