Cara Pindah Hosting ke Cloudflare Pages Gratis

by Andi Saputra
Cara Pindah Hosting ke Cloudflare Pages Gratis

Cara Pindah Hosting ke Cloudflare Pages Gratis

Banyak pemilik blog atau portfolio yang masih bayar hosting bulanan padahal konten mereka statis—HTML, CSS, JavaScript, atau static site generator (Hugo, Jekyll, Next.js). Jika itu situasi Anda, Cloudflare Pages menawarkan solusi gratis dengan performa global. Tapi migrasi butuh persiapan. Artikel ini jelaskan langkah demi langkah, plus kapan Pages cocok dan kapan sebaiknya tetap di hosting tradisional.

Apakah Cloudflare Pages Cocok untuk Anda?

Sebelum mulai, pastikan proyek Anda memenuhi syarat:

  • Situs statis (HTML, CSS, JS tanpa server-side processing)
  • Static site generator (Hugo, Jekyll, Gatsby, Next.js, Nuxt, 11ty, dll)
  • Tidak perlu database atau backend API khusus
  • Domain sudah ada atau siap beli (Cloudflare juga jual domain)
  • Repo Git (GitHub, GitLab, Gitea) untuk deployment otomatis

Jika situs Anda pakai PHP, MySQL, atau perlu server-side logic (login, form processing), Cloudflare Pages bukan pilihan—Anda butuh hosting tradisional atau Vercel/Netlify berbayar.

Persiapan Sebelum Migrasi

1. Backup File Situs Lama

Download semua file dari hosting lama via FTP/SFTP atau cPanel File Manager. Simpan di folder lokal. Jika pakai database (misalnya untuk cache atau metadata), export dulu.

2. Siapkan Repository Git

Buat akun GitHub (atau GitLab/Gitea). Buat repository baru, push seluruh file situs ke sana. Jika situs pakai static site generator, pastikan file package.json (Node), Gemfile (Ruby), config.toml (Hugo), atau build config lain sudah ada.

Contoh struktur repo:

my-blog/
├── content/
├── public/
├── src/
├── package.json
├── .gitignore
└── README.md

3. Pastikan Build Process Jelas

Cloudflare Pages butuh tahu cara build situs Anda. Jika pakai static generator:

  • Hugo: build command hugo, output folder public
  • Jekyll: build command jekyll build, output folder _site
  • Next.js: build command npm run build, output folder .next atau out
  • Gatsby: build command gatsby build, output folder public

Jika situs murni HTML/CSS/JS tanpa build, output folder tinggal folder root atau folder public.

Langkah-Langkah Migrasi

Langkah 1: Daftar Cloudflare (Jika Belum)

  1. Buka cloudflare.com
  2. Klik Sign Up, isi email dan password
  3. Verifikasi email
  4. Pilih plan gratis (Free)

Langkah 2: Hubungkan Repository Git

  1. Login ke Cloudflare Dashboard
  2. Klik Pages di menu kiri
  3. Klik Create a project
  4. Pilih platform Git: GitHub, GitLab, atau Gitea
  5. Authorize Cloudflare untuk akses repository
  6. Pilih repository situs Anda
  7. Klik Begin setup

Langkah 3: Atur Build Settings

Cloudflare akan mendeteksi framework otomatis. Jika tidak:

  • Framework preset: pilih yang sesuai (Next.js, Hugo, Jekyll, dll) atau None untuk HTML murni
  • Build command: contoh npm run build, hugo, jekyll build
  • Build output directory: folder hasil build, contoh public, _site, .next/static
  • Root directory: biarkan / jika file di root repo, atau isi path subfolder
  • Environment variables: jika situs butuh API key atau konfigurasi, isi di sini

Contoh untuk Next.js:

  • Framework: Next.js
  • Build command: npm run build (atau next build)
  • Build output directory: .next

Contoh untuk Hugo:

  • Framework: Hugo
  • Build command: hugo
  • Build output directory: public

Langkah 4: Deploy Pertama

  1. Klik Save and Deploy
  2. Cloudflare akan pull repo, menjalankan build command, dan deploy otomatis
  3. Tunggu proses selesai (biasanya 1–5 menit)
  4. Saat berhasil, Anda dapat URL .pages.dev gratis, contoh my-blog.pages.dev

Langkah 5: Arahkan Domain

Opsi A: Domain sudah di Cloudflare

  1. Buka domain settings di Cloudflare Dashboard
  2. Cari CNAME record
  3. Buat record baru:
    • Name: www (atau subdomain lain)
    • Target: my-blog.pages.dev
    • Proxy status: Proxied (awan orange)
  4. Untuk apex domain (example.com tanpa www), tambah CNAME Flattening atau gunakan ALIAS record (jika supported)

Opsi B: Domain di registrar lain

  1. Login ke registrar (Niagahoster, IDCloudhost, Namecheap, dll)
  2. Ubah nameserver ke Cloudflare:
    • maya.ns.cloudflare.com
    • nash.ns.cloudflare.com
  3. Tunggu propagasi (1–48 jam)
  4. Di Cloudflare, tambah CNAME record seperti Opsi A

Opsi C: Beli domain di Cloudflare

  1. Di Cloudflare Dashboard, klik Domain Registration
  2. Cari domain, beli
  3. Cloudflare otomatis setup DNS
  4. Tambah CNAME record untuk Pages

Langkah 6: Setup SSL/TLS

Cloudflare otomatis memberikan SSL gratis. Pastikan:

  1. Di SSL/TLS settings, pilih mode Full atau Full (strict)
  2. Tunggu certificate issued (biasanya instan)
  3. Test situs dengan https://example.com

Perbandingan: Cloudflare Pages vs Hosting Tradisional

Aspek Cloudflare Pages Hosting Tradisional
Harga Gratis (unlimited bandwidth) Rp 30–200rb/bulan
Tipe Situs Statis saja Statis + dinamis (PHP, MySQL)
Deployment Otomatis dari Git Manual FTP atau Git
Uptime 99.9%+ (global CDN) Tergantung provider
SSL Gratis, otomatis Gratis (Let's Encrypt) atau berbayar
Skalabilitas Unlimited (global) Terbatas resource
Kontrol Server Tidak ada Full akses
Build Time Unlimited, gratis N/A
Custom Backend Tidak (Pages Functions terbatas) Bisa PHP, Node, Python

Kelebihan Pindah ke Cloudflare Pages

Gratis selamanya tanpa hidden cost
Global CDN otomatis, loading cepat di mana saja
Deployment otomatis setiap push ke Git—tidak perlu FTP
SSL gratis dan auto-renewal
Unlimited bandwidth dan request
Preview deployment untuk setiap branch atau PR
Analytics built-in (terbatas tapi cukup)

Kekurangan & Batasan

Situs statis saja—tidak support PHP, MySQL, atau server-side logic
Build time limit 20 menit per deploy (Pages Functions berbayar untuk fitur lanjut)
Tidak ada cPanel/panel control tradisional
Migrasi database butuh convert ke static atau API external
Learning curve untuk Git dan build tools
Pages Functions (serverless) gratis tapi terbatas—lebih dari itu harus berbayar

Kapan Tetap Gunakan Hosting Tradisional?

  • Situs butuh PHP, MySQL, atau backend custom
  • Perlu cPanel untuk manage email, subdomain, database
  • Situs dinamis dengan user login, form processing, atau CMS tradisional (WordPress, Drupal)
  • Tidak nyaman dengan Git dan command line
  • Perlu support lokal dalam Bahasa Indonesia

Tips Migrasi Lancar

  1. Test di staging dulu — deploy ke branch testing sebelum production
  2. Redirect old URLs — jika struktur URL berubah, setup 301 redirect di Cloudflare Workers atau via _redirects file. Jika Anda juga mengelola server Nginx sendiri, panduan tentang nginx rate limiting configuration dari systemary.io bisa berguna untuk mengamankan endpoint sebelum migrasi penuh.
  3. Monitor analytics — pastikan traffic tercatat dengan benar
  4. Setup email forwarding — Cloudflare bisa forward email dari domain Anda
  5. Jangan hapus hosting lama sampai yakin semua berfungsi

Vonis

Cloudflare Pages adalah pilihan tepat untuk blog statis, portfolio, landing page, atau dokumentasi yang tidak perlu backend. Gratis, cepat, dan deployment otomatis dari Git membuat maintenance jadi ringan. Cocok untuk developer yang sudah familiar Git dan static site generator.

Tapi jika situs Anda dinamis (WordPress, toko online dengan database, atau butuh PHP), tetap gunakan hosting tradisional lokal seperti Niagahoster atau IDCloudhost—harga masih terjangkau (Rp 50–100rb/bulan) dan support Bahasa Indonesia lebih mudah. Jika Anda juga ingin meningkatkan visibilitas situs setelah migrasi, pertimbangkan untuk menggunakan jasa SEO teknis profesional agar performa situs baru Anda optimal di mesin pencari.

Runner-up untuk situs dinamis gratis: Vercel (Next.js), Netlify (semua framework, tapi build limited), atau Railway (backend + database)—tapi tetap ada batasan dan upsell.

Mulai migrasi hari ini: push repo ke GitHub, connect ke Cloudflare Pages, dan nikmati hosting gratis dengan performa global. Tidak ada alasan lagi bayar hosting untuk situs statis.