SSL Encryption

Introduction

Turbo automatically installs SSL certificates on behalf of all projects courtesy of Let's Encrypt. To configure your project for SSL, a custom domain is required. The Turbo staging environment uses our SSL certificate for all projects but the production environment generates unique certificates on behalf of all projects for free.


Custom Domains

After registering a URL with your DNS provider (such as GoDaddy or Namecheap), login to Turbo and select your project from the dashboard. In the "overview" section, find the row called "domain" and click "Connect Domain" - in the prompt, enter your domain (www.example.com) and press the "connect" button. After a few seconds, your domain should be registered.

Click to enlarge Click to enlarge

Deploy To Production

After connecting a custom domain, the next step is to deploy your project to our production environment. Make sure to remember to link the app ID to your local project first. From the root directory:

$ turbo deploy --prod

Once the deployment is complete, you will see a message indicating the production URL of the project. Copy that URL to the clipboard as you will need it for the next step:

Click to enlarge

Configure DNS

Once the project is deployed to production, it is time to configure the domain on your DNS provider. DNS consoles vary from provider to provider but fundamentally, they all present the same options. In our case, we want to set the CNAME of your domain to the URL copied to the clipboard from the end of the deploy process:

Click to enlarge

Generate Certificate

Finally, it's time to generate the SSL certificate. To do so, simply navigate to your custom domain using the HTTPS protocol. The first request may take a few seconds as Turbo generates and installs the certificate but afterward, each request should be fast and responsive:

Click to enlarge

Questions/Comments

If you have any questions, comments or feedback, feel free to contact us at matthew@turbo360.co