I have been using heroku redis for a while now on one of my side projects. I currently use it for 3 things
- It serves as a place for me to store firebase certificates
- It is used for caching data on the site
- It is used for rails sidekiq jobs
Recently, my heroku usage went up and I had to change it to use heroku redis premium plan. Ever since then I have been getting error: SSL_connect returned=1 errno=0 state=error: certificate verify failed (self signed certificate in certificate chain)
somehow. Everything stayed the same yet the error started popping out of nowhere.
Does heroku-redis premium plan work fundamentally different than a basic heroku-redis plan?
I am using ruby on rails, deployed on heroku with heroku redis if that helps.
4
Answers
Actually, when you install the Heroku Redis on your heroku app, it will create for you 2 Config Vars : REDIS_TLS_URL and REDIS_URL.
The docs are actually incorrect, you have to set SSL to verify_none because TLS happens automatically.
From Heroku support:
According to Heroku’s docs
You need to
Also if you are having this issue while attempting to use sidekiq:
@ricks answer got me 90% of the way there but for anyone like me who is using Rails.cache with Heroku’s Redis, you don’t need that initializer, just this config line in production.rb:
For some other users come to this question, there might be the same issue I experienced today. Error message is the same from Heroku, but it was related to Hotwire and
config/cable.yml
file. The error goes away when you add following to that file.