Heroku用CloudFlare ssl托管RoR站点不起作用
我迫切需要帮助! 我有一个在Heroku上托管的Ruby on Rails网站。 该网站适用于heroku应用程序地址。 我正在尝试让我的自定义网址与ssl一起工作。 我的网址已经在GoDaddy注册,我创建了一个CloudFlare账户,无需支付Heroku收费的20美元/月。
我在heroku中添加了域名。 我在CloudFlare DNS中创建了cname和cname flattening,并从godaddy更改了名称服务器。 我有一个完整的SSL证书,CloudFlare显示为活动。 但是,当我尝试访问该网站时,出现以下错误:
SSL连接错误:无法与服务器建立安全连接。 这可能是服务器的问题,或者它可能需要您没有的客户端身份验证证书。
我经历了CloudFlare上的常见问题,但没有成功。 任何人都可以帮我解决我可能做错的事情吗?
谢谢!
==================================================
有点晚了,但这对我有用:
步骤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 nameservers,
步骤4
转到您的Cloudflare帐户上的“DNS”,并remove all records (A, CNAME, ALIAS,TXT etc..).
现在添加一条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.21
, 216.239.34.21
, 216.239.36.21
, 216.239.38.21
,这是由给定的IP地址谷歌使重定向工作。
边注
在cloudflare上,需要将“A”记录状态设置为“仅DNS”,将“CNAME”记录状态设置为“DNS和HTTP代理(CDN)”
第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中,转到'crypto'并确保SSL设置为'Flexible',如果不是,请立即更改,可能需要一些时间才能通过cloudflare完成更改。
恭喜!!!!!!!!!!!!!
此时,您的网站应该已启动并正在运行,并且既可以用于您的根域,也可以用于您的完整域。
额外
只有您想通过GMAIL发送电子邮件(例如info@example.com)
在cloudflare上转到'DNS'并添加5 'MX' Records
。
example.com
(您的根域) - 指向priority 1
aspmx.l.google.com
example.com
(您的根域) - 指向priority 5
alt1.aspmx.l.google.com
example.com
(您的根域) - 指向priority 5
alt2.aspmx.l.google.com
example.com
(您的根域) - 指向priority 10
alt3.aspmx.l.google.com
example.com
(您的根域) - 指向priority 10
alt4.aspmx.l.google.com
注意:对于all 'MX' records
, TTL
应设置为' 1 hour
'。
现在出去,成为你自己的最佳版本!
链接地址: http://www.djcxy.com/p/32467.html