Finding a reliable and cost-effective cloud service in South Africa is a task that has led me to use many of the better international options such as Contabo, Hostinger or Hetzner.
For shared hosting using a local company like Afrihost is still a good option, and the support is always helpful. For many it might even be the best route to take – you register for a shared host and you will receive a free .co.za domain, this is perfect for hitting the ground running setting up your WordPress site and having convenient email and free SSL all taken care of.
Then your requirements grow or you want to have a bit more control, so you start looking at what cloud options are available.
Honestly, the VPS options from Afrihost leave a lot wanting, and there might be some local companies who do better. Still, many are just resellers so expect better pricing but extreme restrictions in specific aspects.
Where to get your .co.za domain from?
Local domains are also more likely to be acquired from a South African host provider. Personally, I do like Afrihost for all shared hosting and local domain registrations.
They do a good job of streamlining the process and the ability to easily change packages is particularly useful.
Changing your package from full hosting to domain pointing is a breeze and can be done without having to wait for support or anyone else to assist you. If you already know you are going to use a VPS from another host for your website then you can already opt to buy a Domain Pointing package.
Direct visitors to your new host.
Now that you have a domain, you need to tell it where to go. This is done through the DNS records. Your VPS provider will likely have a DNS Zone Editor which will give you the nameservers to use inside the domain host.
Contabo DNS Zone Manager
Take the DNS from your VPS host and fill in the fields by your Domain host. You will usually receive about three or more DNS records to add.
Afrihosts DNS Manager
As you can see inside Afrihosts DNS Manager, I have added all the relevant Contabo Nameservers via NS records on my domain. This means that anyone visiting yourdomain.co.za will then be directed to my VPS where they will then be served any website set up on that server.
With that piece done I can continue to build my sites and even set up subdomains via my VPS providers DNS Zone Manager.
So if I want to add the subdomain “shop” to my main domain then the URL would be shop.mydomain.co.za
This will be done by adding an additional A record to your DNS entries. **As noted in the comments, you should also add your AAAA records for IPV6 Support which can improve the users experience.
A Record entry for shop subdomain on mydomain.co.za
All done, but what about email?
Now that you have your .co.za or really any local domain that you could not get from your preferred VPS or Cloud provider and it is pointing to your well-crafted website which is served by either Nginx or apache then you might still want email.
You might be tempted to run your own email server and that might be a great learning experience, it would not be advisable.
The long and short is to pay for a dedicated email provider and host. By doing that you can focus more on building and far less on managing a single feature.