Mengapa Banyak Migrasi Berakhir Downtime?
Migrasi hosting yang gagal sering berakhir dengan website down 1–24 jam, kehilangan visitor, ranking SEO turun, dan email tidak terkirim. Penyebab utama: DNS dipindah duluan sebelum file siap di server baru, atau backup tidak lengkap.
Kabar baiknya, dengan strategi yang tepat, migrasi bisa dilakukan dengan zero downtime. Pengunjung tidak akan pernah merasakan website pernah dipindah. Artikel ini membahas SOP migrasi yang dipakai tim engineer Saung Hosting saat memigrasikan ribuan klien per tahun.
Sebagai bonus, Saung Hosting menyediakan jasa migrasi gratis untuk semua pelanggan baru. Hubungi support setelah order, sebutkan kredensial hosting lama, kami eksekusi tanpa downtime.
Persiapan Pra-Migrasi
Sebelum mulai migrasi, siapkan checklist berikut:
- Akses cPanel/SSH hosting lama — username, password, IP server
- Akses panel registrar domain — untuk update nameserver/DNS record
- Akun hosting baru sudah aktif — beli paket terlebih dahulu, jangan tunggu
- Catat email hosting jika pakai email custom — perlu re-create di server baru
- Backup full dari hosting lama (file + database)
- Daftar plugin/script khusus yang dipakai (cron job, WordPress plugin license, dll)
- Turunkan TTL DNS ke 300 detik 24 jam sebelum migrasi (mempercepat propagasi)
Pastikan tidak ada perubahan konten/data di hosting lama selama proses migrasi. Idealnya umumkan ke tim/customer bahwa website dalam mode read-only sementara.
Langkah 1 — Backup Full Website
Login cPanel hosting lama → menu Backup atau JetBackup. Generate Full Account Backup. Tunggu 5–30 menit tergantung ukuran. Download file .tar.gz ke komputer lokal.
Alternatif manual:
- File — File Manager → compress folder
public_html→ download .zip - Database — phpMyAdmin → pilih database → Export → format SQL
- Email account — catat user/password setiap email account (jika pakai cPanel email)
- DNS records — screenshot zone editor (A, CNAME, MX, TXT)
Verifikasi backup tidak corrupt dengan ekstrak ke folder lokal dan cek file utama (wp-config.php, index.php, dll).
Langkah 2 — Upload ke Hosting Baru (cPanel)
Login cPanel hosting baru. Upload file backup via:
- Restore via JetBackup — paling mudah, restore otomatis (file + database + email)
- Manual — File Manager → upload .zip → extract di
public_html - SSH —
scp backup.tar.gz user@newhost:/home/user/lalutar xzf
Untuk database:
- cPanel → MySQL Databases → buat database baru (sama persis nama lama jika perlu)
- Buat user MySQL → assign ke database dengan ALL PRIVILEGES
- phpMyAdmin → pilih database baru → Import → upload file .sql
- Update
wp-config.phpatau config Laravel/CodeIgniter dengan kredensial DB baru
Langkah 3 — Test di Hosting Baru via Hosts File
Inilah trik zero downtime paling penting. Sebelum DNS dipindah, akses website di hosting baru via /etc/hosts override:
# Mac/Linux: edit /etc/hosts dengan sudo # Windows: C:\Windows\System32\drivers\etc\hosts 123.45.67.89 namadomain.com www.namadomain.com
(Ganti 123.45.67.89 dengan IP hosting baru). Restart browser, akses https://namadomain.com — yang Anda akses adalah hosting BARU walaupun DNS publik masih ke lama.
Test menyeluruh:
- Halaman utama, blog, kategori, single post
- Login admin (WordPress, CMS)
- Form kontak, newsletter, search
- Checkout WooCommerce (sandbox mode)
- SSL aktif (gembok hijau, no mixed content)
- Permalink (klik link internal, jangan 404)
Kalau ada error, fix dulu di hosting baru. Hosts file biarkan aktif sampai semua oke.
Langkah 4 — Update DNS / Nameserver
Setelah test sukses, saatnya pindah DNS publik. Dua opsi:
Opsi A: Ganti Nameserver (Recommended)
- Login panel registrar (Niagahoster, IDWebHost, Saung Hosting, dll)
- Manage Domain → Nameservers → ganti ke NS hosting baru (mis.
ns1.saunghosting.com&ns2.saunghosting.com) - Save → propagasi 15 menit – 24 jam
Opsi B: Edit A Record (Lebih Cepat)
- Tetap pakai nameserver lama atau Cloudflare
- Edit A record
@danwwwke IP server baru - Propagasi 5–60 menit (lebih cepat dari ganti NS)
Cek propagasi via dnschecker.org. Jika sebagian besar negara sudah merah → kuning → hijau ke IP baru, traffic publik sudah pindah.
Langkah 5 — Hapus Hosts File & Final Check
Setelah DNS publik propagasi, hapus entri di /etc/hosts Anda. Akses website normal — Anda akan dirouting ke hosting baru via DNS publik.
Final check di hosting baru:
- SSL aktif & auto-renew
- Email kirim/terima normal (test ke Gmail)
- Cron job sudah re-setup di cPanel hosting baru
- Form kontak masuk ke email tujuan
- Search Console — submit ulang sitemap (URL tidak berubah, Google tidak butuh re-index)
- Google Analytics tracking masih aktif
- Setting cache plugin (LiteSpeed Cache) sesuai server baru
Langkah 6 — Cancel Hosting Lama
Tunggu minimal 7 hari setelah migrasi sebelum cancel hosting lama. Selama periode ini:
- Pastikan tidak ada email yang masih masuk ke server lama (DNS lama mungkin masih cache di beberapa ISP)
- Cek log error hosting baru — pastikan tidak ada PHP error baru
- Backup terakhir hosting lama untuk arsip
Setelah 7 hari aman, cancel hosting lama via tiket support atau client area. Simpan invoice + backup terakhir minimal 1 tahun untuk audit.
Troubleshooting Migrasi
1. Error 500 di Hosting Baru
Cek error_log di public_html. Biasanya karena PHP version berbeda — set PHP version sama dengan lama via cPanel MultiPHP Manager.
2. WordPress Loop Login
Hapus cookies browser, atau update siteurl di tabel wp_options via phpMyAdmin sesuai domain baru.
3. Email Tidak Bisa Kirim
Cek MX record sudah update ke server baru. Atau pakai SMTP eksternal (Brevo, Resend, SendGrid).
4. Mixed Content Setelah Migrasi
Update URL http:// ke https:// di database WordPress dengan plugin Better Search Replace.
5. SEO Drop Setelah Migrasi
Pastikan robots.txt tidak block crawler. Submit sitemap ke Search Console. Cek Coverage report 7 hari ke depan.
Kesimpulan
Migrasi hosting tidak harus jadi mimpi buruk. Dengan persiapan yang benar — backup full, test via hosts file, propagasi DNS bertahap — migrasi bisa zero downtime sehingga visitor dan customer Anda tidak akan merasakan perpindahan.
Tidak mau ribet? Saung Hosting menyediakan jasa migrasi gratis untuk semua pelanggan baru. Tim engineer kami akan handle semuanya, Anda tinggal pakai. Order paket di halaman web hosting atau hubungi tim support untuk konsultasi.