Рельсы стойки дроссельной заслонки
Я не знаю, почему я не могу использовать гем стойку-атаки Вот что я сделал
Gemfile
gem 'rack-attack'
Я установил драгоценный камень
конфиг /application.rb
config.middleware.use Rack::Attack
инициализаторы / стойку attack.rb
class Rack::Attack
throttle('logins/ip', :limit => 5, :period => 60.seconds) do |req|
if req.path == '/login' && req.post?
Rails.logger.error("Rack::Attack Too many login attempts from IP: #{req.ip}")
req.ip
end
end
end
routes.rb
post 'login' => 'index#create'
root 'index#new'
get 'login' => 'index#new'
Я использую Rails 4.2.3 и стойку атаки гем 4.3.0
Интересно, что мне не хватает
2 ответа
Убедитесь, что вы настроили cache.store в вашем файле initializers/rack-attack.rb, вы можете настроить его следующим образом:
class Rack::Attack
...
cache.store = ActiveSupport::Cache::MemoryStore.new
...
end
Вам может понадобиться включить кеш в вашей среде разработки
пожалуйста, установите config.cache_classes = true
в config/environments/development.rb
,