Categories: General

How to Host Websites on VPS Without a cPanel

A Virtual Private Server (VPS) offers an ideal compromise between shared hosting and dedicated servers. It gives you dedicated resources, greater control, and scalable performance—without the higher cost of a dedicated machine. For developers and advanced users, managing a VPS without a control panel can lead to improved performance and tighter security, but it requires a more hands-on approach. 

If you’re using a self-managed VPS without cPanel or any GUI-based interface, this guide will walk you through every step to get your website live—starting from scratch using only the command line. 

Prerequisites to Host Websites Without a Control Panel

Hosting without a control panel means you’ll manually install and configure every necessary service. Before diving in, ensure you have the following: 

  • A Linux-based VPS plan with root access.
  • An active domain name.
  • Familiarity with the command line and SSH.
  • A stable internet connection for remote configuration.

We’ll be using the popular LAMP stack (Linux, Apache, MySQL, PHP) in this tutorial to host a WordPress website—one of the most common configurations. 

Note: While it’s possible to install WordPress on Windows, Linux offers better performance, community support, and compatibility. 

Step 1: Connect to Your Server via SSH

Once your VPS is deployed, connect to it using SSH

A. Using an SSH Client (like PuTTY)

Setting Up VPS through Putty
  1. Download and install PuTTY.
  2. Enter your VPS IP address and SSH port (default is usually 22).
  3. Click Open and log in using your root credentials.

B. Using Your Local Command Line

For MacOS, Linux, or Windows PowerShell, use this command: 

ssh root@your_server_ip -p22 

Replace your_server_ip and -p22 with your actual IP and SSH port. 

Once logged in, you’re ready to start server configuration. 

Step 2: Install Apache Web Server

Apache is a widely used open-source web server and perfect for hosting dynamic websites.

A. For Debian/Ubuntu:

sudo apt update

sudo apt install apache2 -y

B. For CentOS/RHEL:

sudo dnf update

sudo dnf install httpd -y

C. For openSUSE:

sudo zypper refresh

sudo zypper install apache2

D. Start and Enable Apache:

Start and Enable Apache

To test if Apache is working, visit your VPS IP address in a browser—you should see the default Apache welcome page.

Step 3: Install PHP

PHP allows your server to interpret and execute dynamic scripts. Let’s install PHP and the necessary extensions. 

A. Debian/Ubuntu:

sudo apt install php php-cli php-mysql php-curl php-gd php-mbstring php-xml -y 

B. CentOS/RHEL:

sudo dnf install php php-cli php-mysqlnd php-curl php-gd php-mbstring php-xml -y 

C. openSUSE:

sudo zypper install php php-cli php-mysql php-curl php-gd php-mbstring php-xml 

D. Restart Apache:

sudo systemctl restart apache2 

E. Verify PHP installation:

php -v 

Step 4: Install MySQL

MySQL is the database that stores your website’s content and user data. 

A. Debian/Ubuntu:

sudo apt install mysql-server -y

B. CentOS/RHEL:

sudo dnf install mysql-server -y 

C. openSUSE:

sudo zypper install mysql mysql-client 

Then, enable and start MySQL: 

sudo systemctl start mysql 

sudo systemctl enable mysql

Step 5: Set Up a Virtual Host

Virtual hosts allow multiple websites to run on a single server by assigning separate configurations. 

A. Create a Directory for Your Website:

sudo mkdir -p /var/www/yourdomain.com/public_html 

Set permissions: 

sudo chown -R $USER:$USER /var/www/yourdomain.com/public_html 

sudo chmod -R 755 /var/www 

B. Create a Sample Page:

nano /var/www/yourdomain.com/public_html/index.html 

Paste the following and save: 

<html> 
 <head><title>Welcome!</title></head> 
 <body><h1>Website Hosted Without Control Panel</h1></body> 
</html> 

C. Configure Apache Virtual Host:

For Ubuntu/Debian:

sudo nano /etc/apache2/sites-available/yourdomain.com.conf 

For CentOS:

sudo nano /etc/httpd/conf.d/yourdomain.com.conf 

Add this content: 

Apache

D. Enable and reload Apache:

sudo a2ensite yourdomain.com.conf 

sudo systemctl reload apache2

You should now see your test page by visiting your domain or IP. 

Step 6: Upload Website Files or Install WordPress

A: Upload Files via FTP

Use FileZilla or WinSCP and connect via SFTP using your VPS IP and credentials. Upload your website files into the /public_html directory. 

B: Install WordPress via Command Line

Navigate to your website root: 

cd /var/www/yourdomain.com/public_html 

Download and extract WordPress: 

wget https://wordpress.org/latest.tar.gz 
tar xfz latest.tar.gz 
mv wordpress/* ./ 
rm -rf wordpress latest.tar.gz 

Step 7: Create a MySQL Database and User

Log in to MySQL: 

mysql -u root -p 

 Inside the MySQL shell: 

Inside the MySQL

Step 8: Complete the CMS Installation

Go to http://yourdomain.com and follow the WordPress setup wizard: 

  • Enter your database name, user, and password.
  • Choose your site title, admin username, and password.

Once setup is complete, you’ll be redirected to the WordPress dashboard. 

Step 9: Secure Your Website with SSL

Use Let’s Encrypt to install a free SSL certificate: 

sudo apt install certbot python3-certbot-apache -y 

sudo certbot --apache -d yourdomain.com -d www.yourdomain.com 

Renew certificates automatically: 

sudo certbot renew --dry-run 

VPS Malaysia: Managed vs Self-Managed Options

At VPS Malaysia, we offer both managed and self-managed VPS hosting plans, suitable for both beginners and professionals. 

VPS Malaysia

Self-Managed VPS:

  • Full root access.
  • Choose from Linux or Windows.
  • Ideal for developers, agencies, and traders.

Managed VPS:

  • Pre-installed WordPress, PHP, MySQL, SSL & more.
  • 24/7 monitoring and expert support.

If you prefer control and customization, go with self-managed. For convenience and ease of use, a managed VPS is your best bet. 

Final Thoughts

Hosting a website manually on a VPS is a rewarding experience that gives you complete control over your hosting environment. From improved performance and enhanced security to reduced costs, the benefits are numerous. 

However, it does require a bit more time, patience, and technical know-how. 

Whether you’re spinning up a test environment, deploying a client’s website, or running a secure trading app, VPS Malaysia self-managed plans offer the flexibility you need. And if you’d rather avoid the manual work, you can always go with a managed VPS with SPanel, giving you the best of both worlds.  

FAQs: VPS Hosting Without a Control Panel

Q1. Is cPanel mandatory for VPS hosting?

No. You can configure a VPS entirely through the command line. Control panels are optional but useful for less experienced users. 

Q2. Can beginners manage a VPS without a GUI?

Yes, but there’s a learning curve. Tutorials like this one, paired with practice, make the process approachable. 

Q3. What’s better—Linux or Windows VPS?

For hosting websites, Linux VPS is preferred due to its stability, flexibility, and community support. 

Q4. How do I back up a website without a control panel?

You can schedule backups using cron jobs and tools like rsync, mysqldump, or cloud storage CLI utilities (e.g., AWS CLI). 

Q5. Can I run multiple websites on one VPS?

Absolutely. Using virtual hosts in Apache or Nginx, you can host multiple domains on a single VPS. 

Kaif

Recent Posts

Future of AI: Discovering Dedicated Servers for Machine Learning

Artificial intelligence and machine learning have rapidly progressed from emerging technologies to essential tools across…

1 week ago

What Is SSL/TLS Encryption?

SSL (Secure Sockets Layer) and TLS (Transport Layer Security) are cryptographic protocols that provide encryption…

2 weeks ago

Best Crypto Exchanges and Apps for 2025

1. Introduction As the digital finance landscape continues to evolve in 2025, selecting a trustworthy…

2 weeks ago

How to Start a High-Demand Online Business in Malaysia (2025 Guide)

The digital landscape of online business in Malaysia is transforming at lightning speed. In 2025,…

2 weeks ago

Choosing Between Forex and Crypto? Here’s Why a VPS Matters

1. Introduction  Once you’ve decided to trade online, the next question becomes: "Which is the…

2 weeks ago

How to Set Up a Linux VPS in Malaysia (Beginner Guide: SSH, Apache, MySQL & Domain Setup)

If you're a developer, blogger, or agency based in Malaysia, setting up a Linux VPS…

3 weeks ago