gpt4 book ai didi

ruby-on-rails-3 - Rails 3、OmniAuth 和乘客抛出 RoutingError

转载 作者:行者123 更新时间:2023-12-04 07:01:49 26 4
gpt4 key购买 nike

我正在尝试使用 OmniAuth 从头开始​​构建一个新的 rails 3 应用程序。目前我只有一个完全空的应用程序,我在 Gemfile 中添加了omniauth,并在config/initializers 中添加了omniauth.rb,如下所示:

Rails.application.config.middleware.use OmniAuth::Builder do
provider :facebook, 'APP_ID', 'APP_SECRET'
end

(当然,使用正确的应用程序 ID 和密码而不是占位符除外。)

这在使用 Webrick 从我的开发机器上运行时似乎有效,但是由于 localhost:3000 未注册为应用程序,facebook 给出了错误。所以我将它上传到生产服务器进行测试。在这里,请求似乎完全绕过了 Rack 层并最终出现在引发 RoutingError 的 rails 中,因为在 routes.rb 中没有定义名为/auth/facebook 的路由。

服务器运行 apache 2.2、ruby 1.8.7、rails 3.0.1、rack 1.2 和passenger 3.0.0。有什么明显的我失踪了吗?

顺便说一句,该应用程序安装到一个子网址,即 http://www.mydomain.net/myapp

最佳答案

自己发现了:

将代码更改为:

Rails.application.config.middleware.use OmniAuth::Builder do
configure do |config|
config.path_prefix = '/myapp/auth' if RAILS_ENV == 'production'
end

provider :facebook, 'APP_ID', 'APP_SECRET'
end

现在它就像一个魅力。

关于ruby-on-rails-3 - Rails 3、OmniAuth 和乘客抛出 RoutingError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4009892/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com