How to Setup Free SSL On Your Website Hosted on Serverpilot Free Plan

In 2018, Google started advising every Webmaster to use SSL on their websites. And the latter included it as one of the ranking signals in the search engine.

Almost every website you will see these days has got an SSL. But having an SSL does not mean that you have to spend extra money on getting them.

Although there are companies who are capitalizing on it and offering SSL certificates that you can easily enable for your websites, they charge a happy amount.

For example, Serverpilot has been offering a free plan for many years and it was sufficient for both newbie and advanced bloggers who hosted their websites on cloud storage services such as Digital Ocean or Vultr.

I have got a few websites that are hosted directly on Digital Ocean, and then I have got a few sides for which I have used Serverpilot’s free plan.

The easiest way to get an SSL certificate for or a website is to use server Pilots paid plans.

You get an easy interface where you can and using a toggle button to enable or disable SSL certificates on your domain.

But, since it costs money and you have to pay for every website if you want to use an SSL certificate, some of them.

Although I would recommend, use their paid plans since it is the easiest way possible, I still understand it is not a way for a lot of bloggers, especially those who are starting and struggling with funds to manage.

There is a not so easy way to get SSL certificates even on the free plan of Survey pilot.

It involves a bit of technical knowledge, but if you follow this guide word to word, hopefully, you will be able to do it by yourself.

We will be using let’s encrypt free service to get SSL certificates for free and applied them on a website using ssh commands.

If you are hosting your website on Digital Ocean or other cloud storage, which has given you ssh access, you can use it to log in to your server copy paste a few commands, and you will be done.

Protip here: if you have got your login credentials from your hosting service, I would recommend you save them somewhere, which is easily accessible by you. I have it saved in Google Keep so that it is just a browser tab away.

If you are on a Mac, you can use the inbuilt terminal app (, which can be enabled from utilities if not enabled already). App called Putty, both allow you to access your server via secure FTP and push some ssh commands.

If you know how to log into your server, you can directly go to the step second.

1. Get your login credentials from Google Keep are from where you have saved them.

Type as follows

ssh root@123.233.445

The route is the username which is usually ‘root’, and numbers are the IP address of your server.

When You Hit enter after typing this, you will be prompted to enter the password, which you can copy-paste into the app.

2. Once you are logged in, you need to type this,

sple.sh

It is a script that will make the process of installing, let’s encrypt the SSL certificate on your domain name.

The winter looks like this after you type the command and press enter. You have to follow the instructions from thereon.

It will ask you to enter your App name, which is the name of the app in yous Serverpilot account.

After which it will ask you to type in in the server name, which Serverpilot uses ‘serverpilot’.

After which it will ask you to type up all the domains and subdomains where you want to enable, let’s encrypt.

Here you will have to type in your domain name like this,

asiogroup.net www.asiogroup.net

It will start generating the SSL certificate for your domain and prompt you once it is successful doing.

Set up auto-renewal for Letsencrypt certificate

All the SSL certificates have got a validity that gets expired. Usually, the premium ones, the paid ones, that you get from hosting websites offer 1-year validity. In contrast, letsencrypt only offers fit for three months, which means you will have to renew it every three months.

The good thing is that you can set up auto-renewable so that you do not have to worry about renewing it manually.

You can do it by using the following commands

Type this command

crontab -e

A file will be opened in the Terminal or the Putty app. You will have to use the arrow keys to no scroll down and bottom.

Then you need to paste this after the last line.

0 */12 * * * letsencrypt renew && service nginx-sp reload

After copy-pasting this command, you need to save the file and exit it, the process to do would be mentioned in the app itself. If you are having difficulty to find it here, it is

Type Control + X, herbal prompt you to save the file and exit press Y and press enter.

Before exiting make sure you restart your server using this command

sudo service nginx-sp restart

You can then log out of the Terminal all putty app, and the SSL has been generated for your domain name

The changes You need to make in WordPress

After getting the SSL certificates, your site will be accessible at both http and https. You will have to force your users to the https version of your website, even if the type http.

So from the settings area in WordPress dashboard, you have to change your website URL from http to https.

And then you need to add these codes to the .htaccess file of your website.

RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

The .htaccess file can be accessed via an FTP manager such as Filezilla. Or, you can also use this WordPress plugin to access root directory of your WordPress without AC panel or FTP client.

Alternatively, you can also install a WordPress plugin that will easily redirect http to https. One such plugin is use this WordPress plugin

What to do if your website is partially secure?

For the SSL to completely be enabled for your website, you will see a lock I can appearing against the domain name in the address bar of the browser.

You can tap or click on it, and you will get something like this written in green, which means that the SSL certificate has been enabled correctly.

If you are saying something like the website is partially secure, it means that some of the content of your website is still hosted on http.

If you have a bit of knowledge about codes, you can open inspect elements and view which website links are in http and try to make them https.

This can be done by simply removing and uploading the file that has got an HTTP connection, such as the logo of the website or any other file.

How to change all your internal links from http to https

In the past, you may have used http link to interlink your blog posts. Doing them manually is going to take a lot of time, and you won’t be sure where you have inserted the links.

The best and the most natural solution is to use search and replace plugin and then replace all the http links of your website into https.

Please search for http://websitename.com and replace it with https://websitename.com.

Important: Make sure you use the exact domain name, just is added to http. This will replace all the entries in your database making it’s a super easy and convenient way to change all the links on your blog from http to https. 

I hope you find this article useful you can check out more useful articles on the blog subscribe to why our newsletter or turn on the push notifications to get notified about the next article.

Let me know if you want to make a video tutorial about it, using the comment section below. I shall make one and update this article.

Get more stuff like this
in your inbox

Subscribe to our mailing list and get interesting stuff and updates to your email inbox.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.