我有一个使用django-redis 3.8.0连接到reds的aws实例的django项目。但是,我在尝试连接时收到ConnectionError: Error 111 connecting to None:6379. Connection refused.
。如果我ssh到我的ec2并使用shell中的redis-py,我可以很好地从缓存中读取和写入,所以我不相信这是一个安全策略问题。
答案 0 :(得分:14)
好的,想通了。我需要做的是在我的位置前加上redis://
。这是特定于django-redis库以及它如何解析位置url。这就解释了为什么当我使用python redis库手动设置StrictRedis连接时,我能够连接。
答案 1 :(得分:1)
如果您正在运行elastic-cache redis,则无法从AWS外部访问它 - 这就是您收到错误的原因。
来自AWS FAQ:
请注意,目前没有基于IP范围的访问控制 已启用缓存群集。 缓存群集的所有客户端必须是 在EC2网络内,并通过安全组授权 如上所述。