Unicorn和omniauth-facebook – 未初始化的恒定OmniAuth
所以我想让omniauth-facebook在我的生产环境中工作。 它使用POW在我的机器上本地工作正常。
我的prv env是带有nginx / unicorn的ubuntu,代码是Rails 3.2.13,独角兽的错误是:
E, [2013-05-20T15:51:13.900829 #8737] ERROR -- : uninitialized constant OmniAuth (NameError) /home/web/apps/****/releases/20130520041958/config/initializers/omniauth.rb:1:in `'
所以从我能找到的,我尝试在configure块上面添加require’omniauth / facebook’到我的production.rb文件,现在我得到:
/home/web/apps/****/shared/bundle/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require': cannot load such file -- omniauth/facebook (LoadError)
gemfile看起来像这样:
source 'https://rubygems.org' gem 'rails', '3.2.13' gem 'pg' gem 'bcrypt-ruby', '3.0.1' gem 'jquery-rails', '2.2.1' gem 'omniauth-facebook' gem 'simple_form'
初始化文件看起来像这样:
OmniAuth.config.logger = Rails.logger Rails.application.config.middleware.use OmniAuth::Builder do provider :facebook, ENV['FACEBOOK_APP_ID'], ENV['FACEBOOK_SECRET'] end
任何人的想法? 我在这里失踪了。 我跟着导演360,正如我所说的在POW本地工作。
大家都想通了,
首先,我需要:
require 'omniauth-facebook'
不
require 'omniauth/facebook'
在initializers文件中,当重启unicorn时停止,然后启动命令而不是重启命令。