koeksGHT
Dealer

So you want to host websites online? I will be giving you my experience with cloud server hosting, managing the server, databases and being able to host multiple projects for $5 per month on cloud infrastructure. Sound too good to be true? Nope, you just need the right tools.
The main tools I use that make everything possible for hosting online are
- Digital Ocean (Cloud Hosting)
- CloudFlare (CDN and security)
- Zpanel (Server Control Panel)
- Putty SSH
A combination of all these tools(most free) allows any individual to setup and manage a web service visible to anyone on the internet, you just need the website ideas or customers!
Hosting
Yes hosting! We need to start somewhere. You will need a place on the internet to host your application. I am quite new to DigitalOcean as I recently discovered them. They are a cloud based server company and offer servers starting at $5pm for 20GB SSD storage, 512MB RAM and 1TB of bandwidth transfer. For that price it is a complete and utter market steal and is the best bang for buck I have found for cloud hosting. The cloud servers are scalable due to the infrastructure and can be re-sized up to 96GB of RAM with just a reboot so any requirements of the applications growing are solved right here from the start. You are free to use any linux or windows based cloud server providers you want.
Now these servers are unmanaged and you do get a choice of linux distribution to install on the server. In my case I like using CentOS as I am familiar with it, runs very well and has good support online. Pick whatever your poison is from Ubuntu to Fedora if you prefer another Linux distribution.
Once you have selected your server size/price your linux distro and region to host server (Amsterdam in my case as closer to South Africa Geographically) you are ready to go.
From this point you will be accessing your server through the terminal. I use Putty to get into my server when needed, you will be asked to login as root (you can change this or add a SSH key if you want for security).
Congratulations, you now have a cloud server running, now to get it ready to host something.
Control Panel
Great, you have a server but it has nothing on it.. Normally at this point you would have to go install all the separate services such as Apache, MySql, dovecot mail server etc to get your server up and running for the tasks you need to accomplish. However if we use some of the many control panels online it sorts out the basic installation and configuration of these services for us (You will still need to know how to access the configs through terminal if you even should need)
My choice of control panel is Zpanel, it is a free open source linux web server control panel and allows you to setup account based hosting(Free version compared to CPanel).
Zpanel will allow you to manage the DNS of domains you host on that server as well as setup FTP accounts, manage databases, mail accounts etc. All the web hosting tools to give you the power to be a reseller webhost at this point if you wanted! HA Afrihost!

Security and CDN
At this point I assume you have some web application you have developed to host on the server even if it is a "Hello World" php script, WordPress or e-commerce shop.
Once you have decided and purchased a domain name (.com .org. co.za whatever) I recommend using CloudFlare. CloudFlare provides CDN (content distribution network) and security against bots on your website. To configure you add your domain in CloudFlares control panel, setup DNS settings to point to the server IP and change your domains nameservers to the ones specified by CloudFlare on your domain registrars control panel.
What CloudFlare does it pass all of your DNS traffic through its systems so they can work their magic, boost your website speed and provide better security against spam bots!
Using these tools you can successfully run a server and host unlimited web applications(within resources). You also will be able to sell account based hosting if you wanted to become a webhost or resell to friends/family.
No more R29pm for 1 domain, 100mb disk space and 0.5GB bandwidth!