How To Host Unlimited WordPress Sites On A Super Fast VPS For Just $5/Mo

Are you still using a shared host?

 

Well, what if I tell you you can get a vps for just $5 a month where you can host multiple wordpress sites?

 

It’s 2019 and hosting servers have come a long way so if you are still stuck on a shared host, let me introduce you to something.

 

Developer hosting.

 

Now, don’t freak out, it’s not as complicated as it sounds.

 

While VPS’s from Inmotion Hosting and LiquidWeb costs upwards of $60/mo, there are sites like DigitalOcean and Linode which gives you a full vps for just $5 bucks a month.

 

Sounds too good to be true? It’s not.

 

Because there is a catch.

 

While Inmotion and LiquidWeb comes with managed support, developer hosting servers are 100% unmanaged.

 

Basically, you are on your own.

 

The main difference?

 

There is no CPanel. You get root SSH access.

 

Instead of CPanel File Manager, you’ll be uploading files through FileZilla SFTP.

 

Want to create a new MySQL database? Well, you’ll have to login to mysql via ssh and enter

 

CREATE DATABASE Database_Name;

 

Sounds like too much work? Well, then this isn’t for you.

 

But if you are fine with a little bit of learning curve, then read on.

 

DigitalOcean & Linode – Pricing

 

Both are priced practically the same.

 

DigitalOcean

 

Linode

 

For $5 a month you get a server with 1 GB Ram, 1 Terabyte bandwidth and 25 gb ssd storage. If you don’t know what SSD stands for, just know that it’s way way way faster than traditional storage.

 

So basically the $5 month plan is enough for most blogs and websites, if you do face any server timeout issues, just upgrade to the $10/mo plan and you should be good, I used to be on the $20/mo plan but that seemed like a waste so I downgraded to the $10/mo plan which seems to be perfect for me and the traffic I get.

 

Now, let’s get started.

 

Step 1 – Create An Account

 

The first step, obviously, is to create an account at either DigitalOcean or Linode.

 

I’ll focus on DigitalOcean for this post but the setup process is almost the say.

 

Go to https://www.digitalocean.com/ and sign up for a free account.

 

Step 2 – Use The Automatic 1-Click Installer

 

After you create and activate your account, login and click on Create > Droplet

 

Under “Choose an image”, Click “Marketplace” and select “WordPress on 18.04”.

 

cheap wordpress hosting

 

Under “Choose a plan”, click on the arrow on the left to see smaller plans.

 

Then select the appropriate plan, you can go with a $5 plan and then upgrade to a $10 one.

 

Now, when choosing a hostname, give a full subdomain.

 

For example, if your domain is yourdomain.com, make the hostname any of the following

 

cloud.yourdomain.com OR my.yourdomain.com OR server.yourdomain.com

 

You get the idea, right?

 

 

Now click the big wide green “Create” button and your server will deploy in about 60 seconds.

 

Step 3 – Add Your Domain

 

Head over to Networking, Enter your domain name and click Add.

 

Now click on the newly created domain from the list.

 

Now we need to create an A record.

 

For hostname, enter “@”

 

Select your droplet as resource.

 

Leave the TTL as default.

 

Click “Create Record”

 

Now repeat the steps but instead of “@” enter the hostname you entered.

 

So for example, if you entered cloud.yourdomain.com as hostname in Step 2, just type in cloud, select your droplet as resource and leave TTL as default.

 

That’s about it, now visit your domain and you’ll see the WordPress installation screen popup. That’s it :).

 

Need To Host More Than One WordPress?

 

Okay, that’s a little bit more work. We need to configure the Apache VirtualHosts file to support two domains.

 

Open a Terminal app, if you are on Windows then download Putty, if you are on mac, I use iTerm.

 

Then enter the code below

 

ssh root@yourdomain.com

 

You’ll be asked for a password, check your email from DigitalOcean.

 

On first login you’ll be given the option to set your own password.

 

Now once you are ready head over to the virtual hosts folder with the following command

 

cd /etc/apache2/sites-available

 

Now enter

 

nano yourdomain.conf

 

Replace yourdomain with your domainname ofcourse.

 

Now copy paste the following code

 

<VirtualHost *:80>
ServerAdmin your_email_address
ServerName yourdomain.com
ServerAlias www.yourdomain.com

DocumentRoot /var/www/html
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

 

Now press Ctrl + X to save the file. Then, we need to disable the default hosts file and enable this new one. So run the following commands

 

a2dissite 000-default.conf

a2ensite yourdomain.conf

service apache2 reload

 

Now try loading your website and see if it works, if it does, all good 🙂

 

Now all you have to do is copy this main hosts file for all your wordpress blogs. So to set up a wordpress blog on yourdomain2.com, run…

 

cp yourdomain.conf yourdomain2.conf

nano yourdomain.conf

 

Change where ever yourdomain.com is present to yourdomain2.com

 

And change “/var/www/html” to “/var/www/yourdomain

 

Then run,

 

a2ensite yourdomain2.conf

service apache2 reload

 

Now run the command

 

mkdir /var/www/yourdomain

chmod -R 755 /var/www/yourdomain

 

If you visit yourdomain2.com you should see a blank directory.

 

It’s time to install WordPress

 

But before that, we need to create a brand new database and user tables, to do that, execute the following commands

 

mysql

CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

GRANT ALL ON wordpress.* TO ‘wordpressuser‘@’localhost’ IDENTIFIED BY ‘password‘;

FLUSH PRIVILEGES;

EXIT;

 

Now, we need to download and extract wordpress, to do that

 

cd /var/www/

wget https://wordpress.org/latest.tar.gz

tar xzvf latest.tar.gz

cp wordpress yourdomain2

 

This will make a folder of WordPress at the home directory of yourdomain2

 

Now we just need to edit the wordpress configuration

 

cd /var/www/yourdomain2/

cp wp-config-sample.php wp-config.php

nano wp-config.php

 

Enter the database credentials you used when you created the mysql database, save the file with Ctrl + X and visit yourdomain2.com to complete the install 🙂

 

I’ve marked the parts that need to be customised red so you’ll understand better.

 

For every new domain you want to add, just copy the main config file and repeat the process 🙂

 

If you need help, feel free to email me at sam@clicks2salesmail.com or leave a comment. If you would like to know how to make money online even without having a blog, click here.

Leave a Reply

Your email address will not be published. Required fields are marked *