Panduan Lengkap Cara Migrasi WordPress dari VPS ke VPS Baru

Pendahuluan

Dalam artikel ini, kami akan membahas langkah-langkah praktis dan terperinci untuk membantu Anda melakukan Cara migrasi WordPress dari VPS ke VPS lain. Baik Anda seorang pemula maupun pengguna yang sudah berpengalaman, panduan ini akan memastikan Anda dapat melakukan migrasi dengan lancar dan aman, sehingga situs Anda tetap berjalan optimal di server baru.

Hal yang Perlu Dipersiapkan Sebelum Migrasi

Langkah pertama dalam migrasi WordPress adalah memastikan VPS baru Anda sudah siap digunakan. Pastikan VPS tersebut sudah dikonfigurasi dengan benar, termasuk instalasi web server (Nginx atau Apache), database server (MySQL), dan PHP yang kompatibel dengan WordPress.

Spesifikasi Minimal VPS WordPress

  • 1 vCPU
  • 1 GB RAM
  • 25 GB Disk Storage
  • 1 Statis IP Publik

Baca Juga : Cara Install WordPress di Ubuntu 24.04 dengan Nginx, Mariadb, PHP8.3 (LEMP)

Gambaran Proses Migrasi

Proses migrasi WordPress ke VPS baru melibatkan beberapa langkah utama yang harus diikuti dengan hati-hati:

  1. Backup web dan database di VPS lama.
  2. Transfer hasil backup ke VPS baru.
  3. Restore web dan database di VPS Baru
  4. Update DNS di panel manajemen domain
  5. Konfigurasi Web Server dan SSL di VPS baru.

Cara Migrasi WordPress dari VPS ke VPS Lain

Saatnya memindahkan WordPress Anda ke VPS baru! Dalam bagian ini, kami akan menjelaskan langkah-langkah mudah untuk melakukan migrasi secara efektif. Pastikan situs Anda tetap aktif dan aman selama proses ini dengan mengikuti petunjuk berikut.

Langkah #1 : Backup Web dan Database di VPS Lama

Masuk ke VPS lama menggunakan SSH. Kita akan mengompres folder web menggunakan tar. Selain itu, kita juga akan melakukan dump database MySQL yang digunakan oleh situs kita.

Membackup Folder Web

sudo tar -czvf web_backup.tar.gz nama_folder_web

Membackup Database

sudo mysqldump -u username -p nama_database > db_backup.sql
  • Ganti nama_database dengan database situs wordpress Anda.
  • Untuk mengetahui nama database situs WordPress Anda, buka file wp-config.php yang terletak di folder web Anda.

Langkah #2 : Transfer Hasil Backup ke VPS Baru

Pada langkah kedua ini, kita masih berada di sisi server lama. Kita akan mentransfer hasil backup, baik folder web maupun database, ke VPS baru. Alat yang kita gunakan untuk proses ini adalah rsync.

Mentransfer Backupan Web ke VPS Baru

rsync -avzhi --progress web_backup.tar.gz username@new_vps_ip:/var/www/

Mentransfer Backupan Database ke VPS Baru

rsync -avzhi --progress db_backup.sql username@new_vps_ip:/var/www/

Langkah #3 : Restore Web dan Database di VPS Baru

Setelah berhasil memindahkan file backup ke VPS baru, langkah selanjutnya adalah melakukan proses restore. Pada tahap ini, kita akan mengembalikan file website dan database yang telah dibackup sebelumnya ke dalam sistem VPS baru, memastikan situs WordPress Anda berjalan dengan lancar seperti di server sebelumnya.

Restore Website

Pertama, silakan login ke VPS baru dan navigasikan ke folder /var/www. Kemudian, periksa apakah hasil transfer yang telah dilakukan sebelumnya sudah ada di folder ini.

cd /var/www
ls

Untuk merestore backup website, kita akan menggunakan perintah tar untuk mengekstrak file backup yang sebelumnya telah kita kompres.

sudo tar -xzf web_backup.tar.gz

Restore Database

Sebelum proses restore db dilakukan, kita harus membuat database baru dulu sebagai tempat dimana kita merestore database dari VPS lama.

masuk ke konsol mariadb

sudo mariadb

Buat database baru, user baru dan beri privilege.

CREATE DATABASE wordpressbaru_db;
CREATE USER wordpressuser@localhost IDENTIFIED BY 'your-password';
GRANT ALL PRIVILEGES ON wordpressbaru_db.* TO wordpressuser@localhost IDENTIFIED BY 'your-password';

Keluar dari konsol mariadb

exit;

Sekarang baru restore database wordpress yang sudah kita pindah ke VPS baru menggunakan perintah mysql/

sudo mysql -u wordpressuser -p wordpressbaru_db < db_backup.sql

Langkah #4 : Update DNS di Panel Manajemen Domain

Silahkan ganti IP address di A record domain Anda, ganti ke IP Addressnya VPS Baru. Disini saya menggunakan cloudflare sebagai panel manajemen domain. Karena cloudflare cepat dalam propagasi perubahan domain. Hanya sekitar 1 sampai 3 menit saja.

Langkah #5 ; Konfigurasi Web Server dan SSL di VPS Baru

Langkah terakhir adalah membuat virtualhost nginx dan menginstall SSL. Untuk virtualhost nginx beserta SSL, silahkan mengikuti petunjuk di bawah ini.

sudo nano /etc/nginx/sites-available/wordpress.conf

Kemudian isikan dengan kode baris di bawah ini :

  • Ganti namadomain.com dengan domain asli website Anda
server {
    listen 80;
    server_name namadomain.com www.namadomain.com;
    root /var/www/wordpress;
    index index.php;

    autoindex off;

    # Access log
    access_log /var/log/nginx/namadomain-access.log combined;

    # Error log
    error_log /var/log/nginx/namadomain-error.log;

    # Additional Configuration
    client_max_body_size 10M;
    client_body_buffer_size 128k;
    client_body_timeout 10;
    client_header_timeout 10;
    keepalive_timeout 5;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    # Block PHP Direct Access to Upload and Includes Directory
    location ~* /(?:wp-content/uploads|wp-includes)/.*\.php$ {
        deny all;
    }

    # Block Access to xmlrpc
    location = /xmlrpc.php {
        deny all;
    }

    location ~ \.php$ {
        try_files $uri =404;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
        fastcgi_index index.php;
    }

    location = /favicon.ico {
        log_not_found off;
        access_log off;
        expires max;
    }

    location = /robots.txt {
        log_not_found off;
        access_log off;
    }

    # Disable Access to Hidden File
    location ~ /\. {
        deny all;
    }

    # Disable Execute PHP File on Upload Directory
    location /wp-content/uploads/ {
        location ~ \.php$ {
            deny all;
        }
    }

    # Header Security
    add_header X-Content-Type-Options nosniff;
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Permitted-Cross-Domain-Policies none;
    add_header X-Frame-Options "SAMEORIGIN";

    # Gzip Compression
    gzip on;
    gzip_vary on;
    gzip_min_length 1000;
    gzip_comp_level 5;
    gzip_types application/json text/css application/x-javascript application/javascript image/svg+xml;
    gzip_proxied any;

    # Cache-Control
    location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
        access_log off;
        log_not_found off;
        expires 360d;
    }

    # Rest API
    location ~ ^/wp-json/ {
        rewrite ^/wp-json/(.*?)$ /?rest_route=/$1 last;
    }
}

Jika sudah, symlinks vhost ke directory /etc/nginx/sites-enabled.

sudo ln -s /etc/nginx/sites-available/wordpress.conf /etc/nginx/sites-enabled/

Selanjutnya, test kode konfigurasi virtualhost di atas dengan perintah berikut :
Pastikan hasilnya “OK”.

sudo nginx -t

Terakhir restart service nginx untuk memuat perubahan.

sudo systemctl restart nginx

Menginstall SSL

 Pertama install dulu paket certbot dan python certbot nginx.

sudo apt install -y certbot python3-certbot-nginx

Kemudian jalankan perintah di bawah ini untuk mendapatkan sertifikat SSL dari Let’s Encrypt.

sudo certbot --nginx --agree-tos --redirect --email [email protected] -d namadomain.com

Penutup

Jadi begitulah cara migrasi wordpress dari vps ke vps baru. untuk pertanyaan lebih lanjut silahkan menulis komentar di bawah ini.

WordPress Org : wordpress.org

Suka Menulis

You might also like
Cara Install WordPress di Ubuntu 24.04 dengan Nginx, Mariadb, PHP8.3 (LEMP)

Cara Install WordPress di Ubuntu 24.04 dengan Nginx, Mariadb, PHP8.3 (LEMP)

Cara Install WordPress di Ubuntu 22.04 dengan Apache, Mariadb, PHP8.2 (LAMP)

Cara Install WordPress di Ubuntu 22.04 dengan Apache, Mariadb, PHP8.2 (LAMP)

Cara Install WordPress di Docker Compose | Nginx dan PHP-FPM

Cara Install WordPress di Docker Compose | Nginx dan PHP-FPM

Cara Install WordPress dengan NGINX dan PHP-FPM di Ubuntu 20.04

Cara Install WordPress dengan NGINX dan PHP-FPM di Ubuntu 20.04