Пару месяцев назад я запускаю приложение Rails 3.1 в Heroku Cedar Stack. Я использую промежуточное ПО Rack :: Deflater, чтобы сжать мой контент и добиться этого с помощью
config.middleware.insert_before ActionDispatch::Static, Rack::Deflater
в моем файле staging.rb.
Однако, начиная с прошлой недели, я получаю следующую ошибку при развертывании в Heroku
Running: rake assets:precompile
rake aborted!
No such middleware to insert before: ActionDispatch::Static
Тем не менее, запуск промежуточного программного обеспечения rake по-прежнему возвращает
use Rack::Cache
use Rack::Deflater
use ActionDispatch::Static
use Rack::Lock
И контент был по-прежнему разархивирован. Однако активы не были скомпилированы (минимизированы), так как предварительная компиляция не удалась. Ручная прекомпиляция рейка :: asets также не помогает.
Итак, я предполагаю, что ActionDispatch :: Static недоступен во время предварительной компиляции ресурсов. Поэтому я попытался вставить Rack :: Deflater перед Rack :: Lock, и теперь мои ресурсы компилируются без каких-либо сообщений об ошибках, но обслуживаемый контент не распаковывается.
Итак, что мне нужно сделать, чтобы gzip и скомпилировали мои ресурсы? Что мне не хватает? Спасибо.