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.
Hosting without a control panel means you’ll manually install and configure every necessary service. Before diving in, ensure you have the following:
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.
Once your VPS is deployed, connect to it using SSH.
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.
Apache is a widely used open-source web server and perfect for hosting dynamic websites.
sudo apt update
sudo apt install apache2 -y sudo dnf update
sudo dnf install httpd -y sudo zypper refresh
sudo zypper install apache2 To test if Apache is working, visit your VPS IP address in a browser—you should see the default Apache welcome page.
PHP allows your server to interpret and execute dynamic scripts. Let’s install PHP and the necessary extensions.
sudo apt install php php-cli php-mysql php-curl php-gd php-mbstring php-xml -y 
 sudo dnf install php php-cli php-mysqlnd php-curl php-gd php-mbstring php-xml -y 
 sudo zypper install php php-cli php-mysql php-curl php-gd php-mbstring php-xml  sudo systemctl restart apache2  php -v  MySQL is the database that stores your website’s content and user data.
sudo apt install mysql-server -y sudo dnf install mysql-server -y  sudo zypper install mysql mysql-client  Then, enable and start MySQL:
sudo systemctl start mysql 
sudo systemctl enable mysql Virtual hosts allow multiple websites to run on a single server by assigning separate configurations.
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 
 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>  sudo nano /etc/apache2/sites-available/yourdomain.com.conf  sudo nano /etc/httpd/conf.d/yourdomain.com.conf  Add this content:
sudo a2ensite yourdomain.com.conf 
sudo systemctl reload apache2 You should now see your test page by visiting your domain or IP.
Use FileZilla or WinSCP and connect via SFTP using your VPS IP and credentials. Upload your website files into the /public_html directory. 
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  Log in to MySQL:
mysql -u root -p  Inside the MySQL shell:
Go to http://yourdomain.com and follow the WordPress setup wizard: 
Once setup is complete, you’ll be redirected to the WordPress dashboard.
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  At VPS Malaysia, we offer both managed and self-managed VPS hosting plans, suitable for both beginners and professionals.
If you prefer control and customization, go with self-managed. For convenience and ease of use, a managed VPS is your best bet.
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.
No. You can configure a VPS entirely through the command line. Control panels are optional but useful for less experienced users.
Yes, but there’s a learning curve. Tutorials like this one, paired with practice, make the process approachable.
For hosting websites, Linux VPS is preferred due to its stability, flexibility, and community support.
You can schedule backups using cron jobs and tools like rsync, mysqldump, or cloud storage CLI utilities (e.g., AWS CLI).
Absolutely. Using virtual hosts in Apache or Nginx, you can host multiple domains on a single VPS.
High-speed hosting for WordPress is crucial for any website looking to provide fast, reliable, and…
Enhanced risk management in automated trading with VPS solutions is essential for traders seeking consistent…
When comparing Dedicated Server vs Cloud Server, understanding the differences can help you choose the…
When managing any online infrastructure, security should always come first. Whether you operate a Linux…
1. Introduction Slow websites frustrate visitors, hurt search engine rankings, and reduce conversion rates. While…
1. Introduction As businesses shift toward digital-first models, hosting needs are becoming more complex. Relying…