0

我有一个应用程序,您可以使用 facebook 登录。这使用了 Omniauth 和 koala,它们在开发环境中都能很好地工作。

但是,在部署到 subURI 的生产模式下,我的登录操作和路由失败。部署的 URL 如下所示,代码如下:

www.domain_name/rails_app

尝试登录时 url 转到

www.domain_name/auth/facebook 

不是

www.domain_name/rails_app/auth/facebook

路线.rb

  match 'auth/:provider/callback', to: 'sessions#create' 
  match 'auth/failure', to: redirect('/')
  match 'signout', to: 'sessions#destroy', as: 'signout'

登录操作 homepage.html.erb

<b><%= link_to "Sign in with Facebook", "/auth/facebook", id: "sign_in" %></b>

我努力了

match 'auth/:provider/callback', to: 'sessions#create', as: "signin"

并使用signin_path而不是,/auth/facebook但由于会话#create 中缺少操作而导致此错误。

有没有办法正确映射 match 'auth/:provider/callback', to: 'sessions#create'到像 login_path 这样的路径?

4

1 回答 1

0

试试这个 - 写在你的 production.rb 文件中

DOMAIN_CONFIG = "http://www.domain_name/"  
config.action_mailer.default_url_options = { :host => "http://www.domain_name" }
于 2012-10-11T10:05:26.727 回答