我正在运行一个使用Ruby 2.3.1的Rails 5.0.0应用程序。
后台作业使用Sidekiq,认证使用devise。
Sidekiq监控和devise在路由中的挂载方式如下:
devise_for :users, skip: [:sessions]
as :user do
get 'login' => 'devise/sessions#new', :as => :new_user_session
post 'login' => 'devise/sessions#create', :as => :user_session
delete 'logout' => 'devise/sessions#destroy', :as => :destroy_user_session
end
require 'sidekiq/web'
require 'sidekiq/cron/web'
#Sidekiq::Web.set :session_secret, Rails.application.secrets[:secret_key_base]
authenticate :user do
mount Sidekiq::Web => '/sidekiq'
end
然而,访问Sidekiq状态页面会使用户退出登录。
在Rails 4.2.5中,相同的代码可以正常工作。