Bobcares

How to Migrate Shared cPanel Hosting to a Vultr Cloud Server

by | Mar 24, 2025

Learn how to migrate shared cPanel Hosting to a Vultr Cloud Server. Our Vultr Support team is here to help you with your questions and concerns.

How to Migrate Shared cPanel Hosting to a Vultr Cloud Server

Migrating a website from a shared hosting cPanel to a VPS server can enhance performance, flexibility, and security. But if you are hesitant to proceed without the right guidance, you are in luck!

This guide will walk you through the process, ensuring a smooth transition without data loss or downtime.

How to Migrate Your Website from cPanel to a VPS: A Step-by-Step Guide

1. Set Up FTP Access on the VPS Server

To transfer files from cPanel, we must enable FTP and create a user account.

  1. First, install vsFTPd on your server:

    sudo apt-get install vsftpd

  2. Then, edit the vsFTPd configuration file:

    sudo nano /etc/vsftpd.conf
    Also, uncomment the following lines:

    local_enable=YES
    write_enable=YES
    anonymous_enable=NO

  3. Now, save and close the file.
  4. After that, create a local user account and grant sudo rights:

    adduser example sudo

  5. Then, start the FTP server:

    sudo service vsftpd start

  6. Open port 22 on the firewall:

    sudo ufw allow 22/tcp
    sudo firewall reload

2. Log in to cPanel

Depending on the hosting provider, log in to cPanel using:

https://example.com/cpanel

3. Backup cPanel

Create a full cPanel backup to preserve website files, emails, DNS records, and databases.

  1. In cPanel, navigate to Backup under the Files section.
  2. Then, under Backup Destination, select SCP.
  3. Enter the VPS server IP, FTP user, password, and port from Step 1.
  4. Once the backup is complete, log in to the VPS and locate the file:

    tar -xvf backup-*_*_example.tar.gz

  5. Then, rename the extracted folder:

    mv backup-__example/ cpanelfiles

  6. Change to the directory and list files:

    cd cpanelfiles/
    ls

Migration Option 1: Install a Web Stack to Host the Website

  1. First, we have to set up Apache, MySQL, and PHP
    • Install Apache:


      sudo apt install apache2
      sudo systemctl enable apache2
      sudo systemctl start apache2

    • Install MySQL:


      sudo apt install mysql-server
      mysql_secure_installation
      sudo systemctl enable mysql
      sudo systemctl start mysql

    • Install PHP:


      sudo apt install php php-xml php-gd php-mysql php-curl php-zip php-mbstring

  2. Then, it is time to configure Apache:
    • Create a virtual host file:

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

    • Then, add the following:


      <VirtualHost *:80>
      ServerAdmin user@example.com
      ServerName example.com
      DocumentRoot /var/www/example.com/
      </VirtualHost>

    • Save and close the file.
    • Then, enable the configuration and restart Apache:


      sudo a2ensite example.com.conf
      sudo systemctl restart apache2

  3. Now, it is time to move the website files to VPS. So, copy files to the webroot directory:

    sudo cp cpanelfiles/homedir/public_html/* /var/www/example.com
    Then, grant ownership rights:

    sudo chown -R www-data:www-data /var/www/example.com

  4. Then, we have to restore databases. So, change to the MySQL directory:

    cd /cpanelfiles/mysql

    And, restore the database:

    mysql -u root exampledb < file.sql

    Then, verify the tables:

    mysql> USE exampledb;
    mysql7gt; SHOW TABLES;

    After that, exit MySQL.

  5. Now, point the domain to the VPS by logging in to the VPS provider’s portal. Then, add a new domain and enter the server IP. Finally, update the nameservers in the domain registrar panel.
  6. Now, it is time to enable HTTPS. So, install Certbot:

    sudo apt install python3-certbot-apache certbot
    Then, request a free SSL certificate:

    sudo certbot -d example.com -m user@example.com

Migration Option 2: Migrate to a Free Control Panel

If we prefer a free control panel, Virtualmin allows importing cPanel backups.

  1. Log in to Virtualmin.
  2. Then, go to Add Servers > Migrate Virtual Server.
  3. Upload the cPanel backup file.
  4. Choose cPanel Backup as the backup type.
  5. Finally, click Migrate Now to import the data.

Migration Option 3: Migrate to Self-Hosted cPanel

If we are using cPanel on the VPS:

  1. Log in to WHM:

    http://server-ip:2087

  2. Then, go to Transfers > Transfer and Restore a cPanel Account.
  3. Select the backup file from the server or upload it manually.
  4. Next, choose Replace All Matching A Records.
  5. Finally, click Restore to complete the migration.

Test the Migration

  1. Visit the domain:

    http://example.com

  2. If DNS propagation isn’t complete, it may take 3-12 hours.
  3. Test HTTPS:

    https://example.com

[Need assistance with a different issue? Our team is available 24/7.]

Conclusion

Migrating cPanel to a VPS server ensures better performance and security. By following our guide, you can seamlessly transfer your website, restore databases, and configure a secure hosting environment.

In brief, our Support Experts demonstrated how to migrate shared cPanel Hosting to a Vultr Cloud Server.

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF