【发布时间】:2013-02-17 03:38:11
【问题描述】:
我正在尝试在 Heroku 上使用 Redis。
我在初始化器上设置如下。
redis_url = ENV["REDISTOGO_URL"] || "redis://127.0.0.1:6379/0/myapp"
RedisApp::Application.config.cache_store = :redis_store, redis_url
RedisApp::Application.config.session_store :redis_store, redis_server: redis_url
会话工作正常。但是片段缓存会报错。
ActionView::Template::Error (Error connecting to Redis on 127.0.0.1:6379 (ECONNREFUSED)):
我认为缓存试图访问错误的位置。
我犯了什么错误?
谢谢。
【问题讨论】:
-
你能确认你的 Heroku 应用上设置了
REDISTOGO_URL配置变量吗? -
是的。我可以确认。我用heroku配置检查了它。我成功地将它从控制器中拉了出来。
-
我在使用 Redis Cloud 插件时遇到了完全相同的问题,但仅在我尝试设置全局 TTL 时才出现。没有 expires_in 键它工作得很好。 Redis Cloud 还免费提供 20 Mb。
-
问题解决了吗?我在heroku上有同样的问题。似乎 ENV 没有正确加载
标签: ruby-on-rails heroku redis