在 Facebook 上使用 Rails OmniAuth,我需要解决一个非常微妙的问题。我的应用在 Heroku 上,它的默认域是myapp.herokuapp.com
(假设)。我有hello.com
一个名为 的个人域,每当用户访问 hello.com 时,他都会被“转发”到 myapp.herokuapp.com。
在 Facebook 开发中心,有App Domains
字段和Site URL
字段。我以为我必须将 myapp.herokuapp.com 放入 Site URL,并将 hello.com 放入 App Domains,但它没有让我这样做。
"hello.com" must be derived from one of: Site URL, Mobile Site URL, Canvas URL, Secure Canvas URL, Page Tab URL or Secure Page Tab URL.
所以我只是将应用程序域留空。
一切似乎都很好,除了一件事。当我通过 myapp.herokuapp.com 访问我的网站时,OmniAuth 工作正常。但是当我浏览 hello.com 时,出现了一个小问题。当我尚未登录 Facebook 时,它不会将我重定向到 Facebook 登录页面。因此,当我单击登录按钮时,它会加载几秒钟但没有任何反应(因为它应该将我重定向到 facebook 网站以先登录但它没有)但是,当我已经登录时脸书,很好用。
我不确定问题是什么。我的猜测:
- 我设置的应用程序域和站点 URL 错误。
- 我还没有设置DNS。Heroku 告诉我我必须将 DNS 设置为指向我的域,但我不确定这意味着什么,因为我从未处理过这个问题。现在,我的个人域 hello.com 只是转发到 myapp.herokuapp.com。这是造成问题的原因吗?
感谢您的帮助!