If you don’t want to pay for an SSL certificate, you can use CloudFlare’s free SSL. Its setup, though, isn’t that apparent and it seems like no one has asked or answered this particular question.
- you already have CloudFlare setup and your domain name points to it;
- you manage your server with Laravel Forge (though the same steps should be true for any nginx server);
- Generate a self-signed certificate on http://www.selfsignedcertificate.com/. It’ll give you the links to 2 files (private key and certificate). Download them.
- In your Forge panel, copy the contents of the above files in Sites > your-site > SSL Certificates > Install Existing Certificate. Don’t forget to click “Activate” once it’s installed.
- In your CloudFlare panel, under Crypto > SSL (with SPDY), choose “Full” (NOT Full strict).
Done! Enjoy your free SSL.
Why this works:
- your user’s connection to the CloudFlare servers is SSL protected using CloudFlare’s SSL (so the green lock will show up);
- CloudFlare’s connection to your server is SSL protected, thanks to your self-signed certificate (so your assets will have the proper https);