◦ Comprehensive security
◦ 24/7 support
VPS → Host Multiple Websites
Host multiple websites on a single VPS (with or without cPanel)
Running multiple sites on a single VPS is one of the smartest moves you can make when you’re ready to level up from shared hosting. Whether you’re managing client projects, launching multiple brands, or just want tighter control over your stack, consolidating on a VPS can save money and boost performance—if it’s set up right.
There are two main ways to do this: with cPanel or without it. Let’s break down both.
Get premium VPS hosting
High-performance VPS hosting that delivers unrivaled power
Why host multiple sites on one VPS?
If you’re managing more than one website, consolidating them on a single VPS can make your life easier and your hosting budget go further. It gives you more control, better performance, and a more scalable setup than juggling multiple shared hosting plans.
- Save money: Instead of paying for a separate hosting plan for each site, one well-configured VPS can handle them all. This cuts down on monthly costs, especially if you’re managing several small to medium-sized sites.
- More control: A VPS gives you full root access, so you can customize the server stack, install the software you need, and fine-tune performance across all your websites. You’re not limited by a host’s pre-set configurations.
- Better performance: Unlike shared hosting, your VPS’s CPU, RAM, and storage are dedicated to your account. You’re not fighting for resources with other users, so your sites stay fast—even during traffic spikes.
- Streamlined management: You can run centralized backups, manage SSL certificates, and monitor uptime or server load from a single place. That’s way more efficient than hopping between multiple dashboards or control panels.
What you need before getting started
Before you start stacking sites on your VPS, make sure you’ve got the right foundation. Hosting multiple websites on a single server adds complexity, so having the right setup from the beginning can save you headaches down the road.
- A VPS plan with enough resources: At minimum, aim for 2GB of RAM, 1 vCPU, and 40GB+ of storage. If you’re running WordPress or CMS-heavy sites, more memory and CPU will help keep things smooth—especially under load.
- Root or sudo access: You’ll need administrative access to install software, configure the web server, manage users, and set up site-specific directories. Without this level of access, you won’t be able to fully control how each site is hosted.
- Domain names for each site: Every website you host needs its own registered domain. You’ll point these domains to your VPS IP address using A records or through a reverse proxy, depending on your setup.
If you’re going the no-cPanel route, you’ll also need to know your way around SSH, Linux file structure, and command-line tools. You don’t need to be a sysadmin—but comfort with the terminal goes a long way.
Option 1: Hosting multiple websites with cPanel
If you prefer a point-and-click interface, cPanel is ideal. It handles everything from DNS and email to SSL and backups, and it’s especially popular with freelancers and agencies.
How to set it up
- Install cPanel/WHM: If your VPS doesn’t already come with cPanel, you’ll need to install it manually. cPanel only runs on certain Linux distros (like AlmaLinux or CentOS), and it requires a fresh, minimal installation—no LAMP stack or extra packages pre-installed. The installation takes 30–45 minutes and locks in your operating system, so plan accordingly.
- Log in to WHM: After the install, you’ll access WebHost Manager (WHM) using your server’s IP and port 2087 (e.g. https://your-ip:2087). This is the admin dashboard where you can manage all cPanel accounts, configure server settings, and install SSL certificates.
- Use “Create a New Account” for each website: Each website should be set up as its own cPanel account. This gives it a unique user, isolated file structure, and separate resource limits (disk space, bandwidth, email quotas, etc.). You’ll assign the domain, username, and password here.
- Assign resource limits if needed: If you’re hosting client sites or want to prevent one site from hogging resources, WHM lets you set limits on things like CPU, memory, and disk usage. You can create custom packages to apply consistent settings across multiple sites.
- Point domain DNS to your VPS IP: Log in to your domain registrar and create an A record for each domain that points to your VPS’s IP address. If you’re managing DNS through WHM/cPanel, you can also configure nameservers and let the VPS handle DNS internally.
- Install SSL via AutoSSL or Let’s Encrypt: cPanel makes it easy to install SSL certificates for all your domains. AutoSSL is built-in and can handle renewals automatically. You can also enable Let’s Encrypt for free certificates if it’s supported by your hosting provider.
When to use cPanel
- You’re managing websites for clients or multiple stakeholders
- You want built-in backups, DNS, and email management
- You need a GUI and want to avoid deep Linux configs
Option 2: Hosting multiple sites without cPanel
Not everyone wants to pay for a license. If you’re comfortable with SSH and server config, you can run a leaner, faster stack without cPanel—no bloat, no extra costs.
Tools you can use instead
- Web server: Apache or NGINX (NGINX is lighter and faster)
- SSL: Let’s Encrypt with Certbot
- DNS: Handled by your domain registrar or services like Cloudflare
Step-by-step: multiple sites on NGINX
- Install NGINX and PHP: Use your package manager (like apt or yum) to install NGINX and PHP-FPM.
- Create site folders: One directory per site, e.g. /var/www/site1.com/public_html/
- Set up server blocks: Configure separate NGINX server blocks (like virtual hosts) for each domain.
- Update DNS records: Point A records for each domain to your VPS IP.
- Install SSL certs: Use Certbot to generate and auto-renew free SSL certificates.
- Reload NGINX: Restart the service to apply your changes and test each domain.
When this makes sense
- You’re comfortable working in the terminal.
- You want a minimal setup without paid software.
- You’re hosting dev, staging, or internal sites.
VPS performance tips for multi-site setups
When you’re hosting multiple sites on the same VPS, performance tuning becomes more important. You want each site to run smoothly without one hogging all the resources.
- Use caching: For WordPress or CMS-based sites, caching can drastically reduce server load and speed up page delivery.
- Monitor resource usage: Keep an eye on CPU, RAM, and disk activity with tools like htop, glances, or web-based dashboards like Netdata. This helps you spot performance issues early, especially if one site starts using more than its fair share.
- Set per-site limits: If you’re using PHP-FPM, you can configure separate pools for each site to control how many PHP processes they’re allowed to spawn. This prevents one busy site from starving others of server resources.
- Use swap wisely: Adding a swap file gives your server breathing room when RAM runs low. It’s slower than physical memory, but better than a crash or forced process kill. Just don’t rely on it long term—if you’re regularly hitting swap, it’s time to scale up.
Security considerations
Running multiple sites on a VPS also means a shared risk: if one gets compromised, the others could be exposed too. A few extra precautions go a long way.
- Update everything: Keep WordPress, plugins, themes, CMSs, and server software up to date. Most exploits target outdated versions of software that have already been patched.
- Use strong file permissions: Avoid letting one site access another’s files. Use separate Linux users if you’re not using cPanel, and make sure directories are properly permissioned (755 for folders, 644 for files is a safe default).
- Harden SSH access: Disable root login, switch to key-based authentication, and change the default SSH port. These steps cut off most brute-force login attempts and bots.
- Enable a firewall: Use UFW (Uncomplicated Firewall) or CSF (ConfigServer Security & Firewall) to control inbound/outbound traffic. Only keep necessary ports open—everything else should be blocked.
- Install Fail2Ban: Fail2Ban monitors log files for failed login attempts and automatically bans IPs that show malicious behavior. It’s a lightweight way to add an extra layer of brute-force protection, especially on SSH and web login pages.
When to scale up (or out)
One of the advantages of a VPS is their easy scalability. When you’re managing multiple sites on a single VPS, it’s that much more important to keep an eye on your server resources. Here are some signs you need to scale your VPS:
- One site’s traffic is impacting others.
- You’re consistently maxing out CPU or RAM.
- You need stronger isolation for client sites.
- You’re managing 10+ domains—at that point, it may be time for a dedicated server or a multi-VPS setup.
Next steps for hosting multiple sites on a single VPS
Hosting multiple websites on a VPS gives you more power, flexibility, and value than stacking up shared hosting plans. If you want convenience, cPanel’s a great choice. If you want total control (and to save on licensing), going without a panel can work just as well—especially if you’re comfortable in the terminal.
When you’re ready to upgrade your hosting to a high-quality VPS, Liquid Web can help. We’ve been leading the industry for decades, because our VPS servers are fast, cloud-based for easy scalability, and unbeatably reliable. Choose your favorite OS and the management tier that works best for you.
Click below to explore VPS hosting options or start a chat with one of our experts right now to learn more
Additional resources
VPS: A beginner’s guide →
A complete beginner’s guide to virtual private servers
What’s my IP address? →
Find your IP address with one click, using our free online tool
Managed VPS vs unmanaged VPS hosting →
How they compare so you can decide what’s best for you