Choosing between shared hosting and a VPS
Shared hosting suits most PHP and MySQL websites, but you need a VPS when you require root access, Docker, background services, or hit resource limits. This guide walks through the decision points and shows what each platform entails in practice.
Choosing between shared hosting and a VPS
If your site is a typical PHP and MySQL website such as WordPress, shared hosting is often enough and is easier to look after. You need a VPS when you require root access, Docker or background services, or you keep hitting resource limits on shared hosting. This guide explains the differences, gives clear decision points, and shows what day‑to‑day VPS work looks like on AlmaLinux 9 and Ubuntu 24.04.
This picks up from having a website already online and, if you are evaluating a VPS, a test server you can reach over SSH.
Before you start
- What “shared hosting” means in practice: many customer accounts live on one server and each account has limited control plus usage caps. On Hostworld shared hosting you manage sites and mail in cPanel. CloudLinux limits prevent one account harming others by capping CPU, memory, I/O and processes. When an account exceeds limits, visitors can see HTTP 508 “Resource Limit Is Reached”.
- What a VPS means in practice: you get your own virtual machine with its own operating system and root access. You install packages, open ports and run background services. Each VPS is isolated from others on the same physical server.
- Hostworld control panels: VPS management is in Virtualizor from our client area. Shared, reseller and WordPress hosting use cPanel. Billing, orders and support tickets live in our WHMCS client area at portal.hostworld.uk.
- DNS when you switch to us: changing nameservers or MX without lowering TTL can cause split delivery for the previous TTL period. Reduce TTL ahead of time if you plan a move. Our nameservers are ns1.serverworld.uk, ns2.serverworld.uk, ns3.serverworld.uk and ns4.serverworld.uk.
- VPS risks to be aware of:
- Reinstalling the OS in Virtualizor erases the VPS system disk and data. Virtualizor’s own warning says “Re-install OS will create fresh VPS without any data.” Back up first.
- Opening the firewall incorrectly can expose services. Make permanent rules deliberately and reload or apply carefully.
- Ubuntu 24.04 enables unattended security updates. needrestart can restart services after updates. Schedule maintenance windows.
- Running your own mail server without PTR, SPF, DKIM and DMARC harms deliverability.
Step 1: Define what you need to run
Write down what your site or app needs to do. Be specific.
- Common case: a CMS such as WordPress or another PHP app with a MySQL or MariaDB database.
- Custom case: a framework or stack that needs its own service, for example Node.js with a running process, a Python app, Redis, a game server, WireGuard, or a Dockerised service.
- Email: decide if you need to host mailboxes on the same platform as your website, and how you plan to send outbound mail.
Match the needs to our products. For shared cPanel hosting you get a managed environment with usage limits per account. For full control pick our London VPS in the UK or our US VPS in New York, and choose an OS such as AlmaLinux 9 or Ubuntu 24.04.
Step 2: Check if shared hosting already covers you
If your site is a conventional PHP and MySQL website and you are not seeing errors during busy periods, shared hosting is often the right call. CloudLinux limits on a cPanel server keep neighbours from affecting you and you from affecting them. When your account exceeds its CPU, memory, I/O or process limit you will see symptoms such as slow pages and HTTP 508 “Resource Limit Is Reached”.
- If you do not hit limits, shared hosting is usually fine and saves you the system administration that a VPS requires.
- If you occasionally hit limits, check your site first. Optimise plugins, cache, and images. If you still hit limits, consider a larger shared plan or move to a VPS.
- If you regularly hit 508 errors during normal use, plan a move to a VPS. That is a clear signal that account caps are in the way.
Step 3: Identify hard requirements that force a VPS
These needs point straight at a VPS:
- Root or system control. If you need to install system packages, change system configuration, manage services or open arbitrary ports, you need a VPS.
- Docker or containers. Docker relies on kernel features and a running daemon that shared hosting does not expose. cPanel also does not provide a Docker manager.
- Custom daemons or services. Anything that must listen on its own port or run persistently under systemd, for example Redis, a game server or WireGuard.
- Non‑web workloads. If your use does not fit behind a cPanel web server and PHP handler, a VPS is the correct platform.
On a VPS you use systemd’s systemctl to manage services and you open ports in the host firewall. You also decide when to patch, reboot and back up.
Step 4: Consider the grey area for app platforms
Some applications that people assume need a VPS can run on cPanel shared hosting when the feature is enabled. cPanel’s Application Manager can host Node.js, Python and Ruby web apps using Passenger. The app runs under the web server rather than as a free‑standing daemon with its own port.
- Look in your cPanel account for “Application Manager”. If you see it, you can deploy a compatible Node.js, Python or Ruby web app there. The app will run under Passenger behind the web server.
- This route does not expose Docker. It does not give you root. Long‑running background processes that are not a Passenger‑managed web app are not suitable for shared hosting.
If your app needs full control of processes or ports, choose a VPS.
Step 5: Decide how you will handle email
Email affects your platform choice more than people expect.
- Shared hosting: You can host mailboxes in cPanel and send mail from the shared environment. You do not manage PTR records and the platform applies standard authentication for you.
- VPS: Running your own mail server is possible but you must set up deliverability. You will need PTR for your server IP and correct SPF, DKIM and DMARC records. Without that, expect bounces or spam foldering. If you want to avoid running a mail server, you can still point your domain’s MX records to a different provider while running your website on the VPS.
Whichever route you take, reduce the MX record TTL in advance of any change and plan the switch to avoid split delivery while caches expire.
Step 6: Preview the day‑to‑day work on a VPS
If you have not managed a VPS before, try these basic maintenance actions on a test machine. They show what you would do regularly. Do not run them on a production server without planning a window.
Update the OS packages
This updates your package lists and applies available package upgrades. It keeps the system secure and current.
On Ubuntu 24.04 LTS
sudo apt update
sudo apt upgrade
On AlmaLinux 9
sudo dnf upgrade -y
Ubuntu 24.04 adopts the deb822 format for APT sources by default. If you edit repository entries, be aware that older guides that mention only /etc/apt/sources.list may not match what you see. AlmaLinux 9 uses dnf to manage packages and can automate updates with dnf‑automatic if you enable it.
Ubuntu 24.04 also enables unattended security updates. The needrestart tool may restart services after updates. Schedule updates and restarts so they do not surprise users.
Manage a system service
This checks the status of a service, then enables it to start at boot and starts it now. Replace “name” with a real service such as sshd if you want to see how it behaves.
On Ubuntu 24.04 and AlmaLinux 9
sudo systemctl status name
sudo systemctl enable name
sudo systemctl start name
Open the firewall for web traffic
This opens TCP port 80 to allow HTTP traffic. Only do this if you are running a web server and intend to accept external traffic.
On Ubuntu 24.04 (UFW)
sudo ufw allow 80/tcp
sudo ufw status
On AlmaLinux 9 (firewalld)
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
Be cautious. Opening or disabling the firewall incorrectly can expose services publicly. Make sure you are allowing only the ports you intend.
Step 7: See how you would manage a Hostworld VPS
With a Hostworld VPS you use Virtualizor for VM management and SSH for operating system administration.
- Start, stop and reboot the VPS in Virtualizor. This is independent of what is happening inside the OS.
- Use the VNC console in Virtualizor to log in when SSH is not available.
- Mount an ISO in Virtualizor when you need to boot a custom installer, where enabled.
- Reinstall the OS from Virtualizor if you need a clean rebuild. This deletes data on the VPS system disk. Always have off‑server backups first.
- Choose AlmaLinux, Ubuntu, Debian or Windows Server when you build or rebuild. For Linux we recommend AlmaLinux 9 or Ubuntu 24.04 LTS for long support windows.
If you need guidance using Virtualizor in your Hostworld account, open a support ticket and we will help.
Step 8: Plan DNS and the move to us
Deciding is one step. Changing where a domain points is another.
- If you are moving to Hostworld shared hosting, set your domain’s nameservers at your registrar to our nameservers: ns1.serverworld.uk, ns2.serverworld.uk, ns3.serverworld.uk, ns4.serverworld.uk.
- If you are moving to a VPS, decide where DNS will live. You can continue using your current DNS service and point A, AAAA and MX records at your VPS. Or you can move DNS elsewhere if that suits your setup. Plan the change in one place first to avoid confusion.
- Lower TTL on the records you intend to change a day or two in advance. After you change nameservers or update A or MX records, expect caches to honour the previous TTL. During that period some visitors will reach the old server and some the new.
- For outbound email on a VPS, configure PTR for the VPS IP and set SPF, DKIM and DMARC records. Test before you switch production traffic.
Step 9: Choose an OS and plan its lifecycle
Pick an operating system that matches your stack and support expectations.
- Ubuntu 24.04 LTS is supported to June 2029. It has an extensive ecosystem and defaults geared toward quick updates, including unattended security updates.
- AlmaLinux 9 has active support to May 2027 and security support to May 2032. It is compatible with RHEL 9 and uses
dnffor package management.
Either makes a solid base for most Linux server workloads. Match the OS your software prefers and plan your patching and upgrade path now so you are not caught by end‑of‑life dates later.
Step 10: Make the call
- Choose shared hosting if your site is a conventional PHP and MySQL website, you do not need background services, and you are not hitting CloudLinux limits. Manage it in cPanel and focus on the website rather than the OS.
- Choose a VPS if you need root or system control, Docker or custom daemons, or you are consistently hitting 508 errors on shared hosting. You will manage the OS over SSH and control the VM in Virtualizor.
When you are ready, pick a plan on our Linux VPS page for the UK or choose our US location if that is a better fit for your audience. If you are staying on shared hosting, your cPanel account remains the right place to manage websites, databases and email.
What next
- Want to learn the day‑to‑day tasks for new VPS owners on AlmaLinux and Ubuntu? Browse our VPS guides for practical how‑tos.
- Ready to order a server in the UK? See Linux VPS and choose AlmaLinux 9 or Ubuntu 24.04 when you build.
- Unsure which route to take after reading this? Tell us briefly what you run and where your audience is. We will look and advise. Open a support ticket.
Common questions
Can I start on shared hosting and move to a VPS later?
Yes. Many customers start on shared hosting for a PHP site, then move when they need custom software or more headroom. Lower the TTL on your DNS records first. Then migrate files and databases, test on the VPS, and finally point the domain to the new target. If you are moving to Hostworld shared hosting instead, update the nameservers at your registrar to ns1.serverworld.uk, ns2.serverworld.uk, ns3.serverworld.uk and ns4.serverworld.uk. During the old TTL period some visitors may still see the old server until caches expire.
Will cPanel on shared hosting run my Node.js or Python app?
It can if your cPanel account includes Application Manager. That feature runs Node.js, Python and Ruby web apps under Passenger behind the web server. It is not the same as running a free‑standing daemon or Docker. If your app needs its own listening port or background processes, choose a VPS.
Can I run Docker on shared hosting?
No. Docker needs kernel features and a running daemon that shared hosting does not expose. cPanel does not include a Docker manager. If Docker is a requirement, use a VPS.
What happens if I use “Reinstall OS” in Virtualizor?
Virtualizor will create a fresh VPS without any data. It wipes the system disk. Back up off the server first. If you are unsure, open a support ticket and we will confirm the safest route.
What if I want cPanel on my own VPS?
It is possible to license cPanel for a VPS under its Cloud tier. Licensing and system administration are your responsibility on a self‑managed VPS. If you prefer not to run your own server control panel, our shared and reseller hosting include cPanel accounts managed by us.
How do I manage my Hostworld VPS day to day?
Use Virtualizor in our client area to start, stop and access the VPS via VNC or to mount ISOs. Use SSH on the OS to update packages, configure services with systemctl and set firewall rules with UFW on Ubuntu or firewalld on AlmaLinux. If anything does not look right, open a support ticket and we will help.