Addon Domains are a convenient way for a webmaster to host multiple domains. Unfortunately they are a solution for yesterday’s internet. Many hosting companies offer “Host Unlimited Domains” for next to nothing. It leads webmasters to believe that they can do just that. And when their sites grow and they inevitably run into resource related issues it can often lead to a negative customer experience. At HostNexus we are able to leverage Plesk’s unique directory structure to ensure domains are created with designated resources under the built-in Subscription system. You may not know it but there is a problem with Addon Domains at multiple fundamental hosting levels.
What Is An Addon Domain?
Addon Domains were first created by Cpanel over 10 years ago. It was a solution to allow standard Cpanel clients to have multiple domains without WHM access. If you’re familiar with Cpanel you’ll know that their reseller level requires access to a separate WHM control panel in which you set up your domains. So instead of a host having to set up their clients on this reseller level with WHM they created Addon domains.
Addon Domains live in a primary domain’s root directory. In Plesk all your files go in “httpdocs” and a new directory for your Addon Domain will be created alongside this level.
As websites have evolved so has the technology that we hosts use to power servers. Web hosts now impose strict resource limits on their client’s domains at the operating system level to ensure server stability. At HostNexus we use CloudLinux and their proprietary LVE (Lighweight Virtual Environment) system for resource allocation. Another system that is growing in popularity for shared hosting is LXC/LXD. These systems are in place to stop any one domain from consuming all of a server’s resource.
The First Problem With Addon Domains – Security
An Addon Domain shares the primary domain’s root username. It will also share the domain’s resource pool (CPU/Memory/Process Limit/IO etc). In the less complex web that existed in the early 2000s this was a decent solution. Back then most sites were simple HTML or used simple PHP applications that consumed very little memory and CPU. But on today’s internet websites are becoming more and more complex. Resource hungry content management systems like WordPress are now the go-to solutions for a lot of webmasters.
Let’s say you setup 5 Addon Domains on your primary domain. You install WordPress with the standard 15-20 plugins on all of them. Your average $5/mo hosting plan comes with 1gb Memory and 1 CPU core (as well as other limits such as Processes and IO). It will only take a handful of concurrent visitors on each site to hit the primary domain’s resource cap. This will result in all the sites slowing down or going offline completely with a 500 error.
The Changing Internet
When HostNexus launched in 2001 our first server was a Pentium 4 800Mhz CPU with 512mb Memory and a 60gb IDE drive. This server comfortably hosted 200 websites. In 2018 this server would struggle to host ONE WordPress powered site with medium traffic. WordPress, whilst being a fantastic system, does not have the most streamlined code. In its effort to be user-friendly and insanely backwards compatible (i.e. like still supporting PHP 5.2) the code base is extremely bloated and loaded with technical debt. You just can’t expect multiple WordPress domains sharing one resource pool to perform well.
The Second Problem With Addon Domains – Security
As I mentioned above Addon Domains live within the file structure of a primary domain. Our operating systems have CageFS in place which isolates each domain’s file structure. If a domain is compromised there is no way for the hacker/malware to access the file systems of other domains. If you have Addon Domains, and malware is uploaded via a vulnerable script, it will have access to all files including files of the root domain and files of all Addon Domains. There is a very real possibility that malware could be spread to your other domains.
We take a Security First approach to our hosting environment and therefore we discourage the use of Addon Domains. If you’d like to use Addon Domains on our Managed WordPress Hosting platform you are certainly welcome to do so. But we also encourage people to understand the drawbacks before adding one. Addon Domains can be easily added in Plesk but we just need to adjust your permissions and limits. So please contact our support team if you really want addon domains on the Managed WordPress platform.
Our Solution – Plesk Subscriptions
As a HostNexus client your domains are created at the Subscription level in Plesk. Subscriptions have their own file structure – just like Cpanel accounts. But unlike Cpanel hosts our clients can manage extra subscriptions up to their plan limits and manage everything from one GUI. Each domain (Subscription) has its own resource pool and those limits are:
- 3 CPUs
- 3GB Memory
- 5MB/s IO
- 50 Concurrent Connections
- 200 Total Processes
In addition each domain’s PHP limits are as follows:
- PHP 7.2 FPM
- 256MB memory_limit
- 128MB post_max_size
- 96MB upload_max_filesize
PHP’s FPM settings are also configured to take full advantage of these high resource limits via the pm.max_children and pm.max_requests directives.
For clients on our betaPRESS or deltaPRESS plans you will be able to host extra domains in line with your plan’s limits. If you have specified the extra domain names during the order process they will have been set up for you. If you didn’t specify the domain names we will have created a placeholder for you. The name will be a random string beginning with “z” just so your primary domain displays first in the domain lists in Websites & Domains in Plesk. Scroll down to find it or alternatively use the drop-down menu at the top of the screen. To change the domain name simply click on Hosting Settings:
In Hosting Settings you will be able to:
- Change the domain name.
- Set your preferred domain (with or without WWW)
- Enable SSL.
- Set https://yourdomain.com as default via a 301 redirect.
- Set your PHP version.
Our Finely Tuned Platform
No-one offers the kind of resources we do on a shared platform and it is designed to deliver maximum performance, even with high traffic. We have load tested it with 1000 concurrent users and while the server load did of course spike, not one error was reported. To take full advantage of our platform you should be hosting one domain on one subscription.