So, HTTPS is the new black, some rumours says that Google will start to rank pages with https higher than plain http sites.
That's great news, I want HTTPS on my site, let's do it.
Meet Let's Encrypt.
Let’s Encrypt is a new Certificate Authority:
It’s free, automated, and open.
My blog platform is Ghost(node.js), im hosting it myself on an EC2 instance. Im using Nginx as a reverse proxy. I did some research of how much time I would need to spend to enable https version on my site and it turned out that the answer was something like...5 minutes. Yep :)
I followed this guide and it all went pretty smooth, but I encountered some problems, here's how I solved them:
-
When running the
./letsencrypt-auto
command I got an error saying that letsencrypt was unable to verify my domains...
Turns out that inbound traffic to port 443 was blocked on my server. Since im using EC2 all I needed to do was adding the port to my Security Group and then run the script again. -
When I enabled https I got a mixed content warning in the console, turns out that my theme uses the
{{blog.url}}
-helper. To update the url of your Ghost blog, simply edit the fileconfig.js
located in the root of your site. -
Disqus comments didn't show up. I needed to migrate all my threads from http to https. Go to
http://yoursite.disqus.com/admin/discussions/migrate/
and click onStart URL mapper
.
Download the CSV file and then add a comma and your https adress after each link.
Example: http://domain.com/hello-world , https://domain.com/hello-world
That's all I needed to do to get my site running on https, pretty sweet!