tutorial, jekyll,

Cara Membuat Custom Domain di GitHub Pages dengan HTTPS

Kiki/🎮🍉⌨️🍩💻 Kiki/🎮🍉⌨️🍩💻 Aug 04, 2026 · 4 mins read
Cara Membuat Custom Domain di GitHub Pages dengan HTTPS
Share this

Blog di GitHub Pages dengan URL username.github.io memang sudah bisa diakses publik, tapi kalau kamu ingin terlihat lebih profesional, menggunakan custom domain sendiri adalah langkah yang tepat. Dengan domain seperti blog.namakamu.com, blog kamu terasa lebih personal dan mudah diingat.

Kabar baiknya, GitHub Pages menyediakan custom domain gratis lengkap dengan HTTPS otomatis via Let’s Encrypt.


Jenis Domain untuk GitHub Pages

Ada dua jenis domain yang bisa kamu gunakan:

  1. Apex domain — domain utama tanpa subdomain, contoh: namakamu.com
  2. Subdomain — contoh: blog.namakamu.com atau www.namakamu.com

Keduanya didukung GitHub Pages. Untuk blog pribadi, subdomain seperti blog.namakamu.com adalah pilihan yang paling umum dan fleksibel.


Prasyarat

  • Domain yang sudah kamu beli (dari Namecheap, GoDaddy, Niagahoster, Domainesia, dll.)
  • Akses ke panel manajemen DNS domain tersebut
  • Repository GitHub Pages yang sudah aktif

Langkah 1: Tambahkan File CNAME ke Repository

Di root folder project Jekyll kamu, buat file bernama CNAME (tanpa ekstensi) dengan isi nama domain kamu:

blog.namakamu.com

Simpan dan push ke GitHub:

git add CNAME
git commit -m "add custom domain"
git push

Penting: File CNAME hanya boleh berisi satu baris — nama domain tanpa http:// atau https://.


Langkah 2: Konfigurasi DNS di Provider Domain

Ini berbeda tergantung jenis domain yang kamu gunakan.

Untuk Subdomain (blog.namakamu.com)

Tambahkan CNAME record di panel DNS:

Type Name Value TTL
CNAME blog username.github.io Auto / 3600

Ganti username dengan username GitHub kamu.

Untuk Apex Domain (namakamu.com)

Untuk apex domain, kamu tidak bisa menggunakan CNAME. Gunakan A records yang mengarah ke IP server GitHub Pages:

Type Name Value TTL
A @ 185.199.108.153 Auto
A @ 185.199.109.153 Auto
A @ 185.199.110.153 Auto
A @ 185.199.111.153 Auto

Dan tambahkan juga CNAME untuk www:

Type Name Value TTL
CNAME www username.github.io Auto

Langkah 3: Konfigurasi di GitHub Pages Settings

  1. Buka repository di GitHub
  2. Klik SettingsPages
  3. Di bagian Custom domain, masukkan nama domain kamu (misalnya blog.namakamu.com)
  4. Klik Save

GitHub akan otomatis melakukan DNS check. Proses propagasi DNS biasanya membutuhkan waktu beberapa menit hingga 24 jam tergantung TTL dan provider DNS kamu.


Langkah 4: Aktifkan HTTPS

Setelah DNS berhasil diverifikasi, centang opsi Enforce HTTPS di halaman Settings → Pages.

GitHub Pages menggunakan Let’s Encrypt untuk menerbitkan sertifikat SSL secara otomatis dan gratis. Setelah HTTPS aktif, semua request ke http:// akan otomatis di-redirect ke https://.

Jika opsi “Enforce HTTPS” masih abu-abu (tidak bisa diklik), tunggu beberapa saat. GitHub sedang memproses penerbitan sertifikat SSL.


Langkah 5: Update _config.yml

Jangan lupa update URL di _config.yml agar link dan sitemap di blog kamu menggunakan domain baru:

url: "https://blog.namakamu.com"
baseurl: ""

Commit dan push perubahannya.


Tips: Menggunakan Domain dengan Cloudflare

Jika domain kamu dikelola di Cloudflare (bukan hanya Cloudflare Pages), ada satu hal yang perlu diperhatikan:

Nonaktifkan Cloudflare Proxy (orange cloud) untuk record CNAME ke GitHub Pages.

Set CNAME record ke mode DNS only (ikon abu-abu), bukan Proxied. Ini karena GitHub Pages perlu memverifikasi kepemilikan domain secara langsung untuk menerbitkan sertifikat SSL Let’s Encrypt.

blog  CNAME  username.github.io  (DNS only - abu-abu)

Verifikasi Domain GitHub (Keamanan Tambahan)

GitHub juga menyediakan fitur Domain Verification untuk mencegah orang lain mengklaim domain kamu ke repository GitHub Pages mereka. Caranya:

  1. Buka Settings di akun GitHub kamu (bukan settings repository)
  2. Klik Pages di menu kiri
  3. Klik Add a domain dan ikuti instruksi untuk menambahkan TXT record ke DNS

Troubleshooting

DNS belum terpropagasi: Cek status propagasi di dnschecker.org. Masukkan domain dan pilih tipe record (A atau CNAME).

HTTPS tidak aktif setelah 24 jam: Pastikan DNS record sudah benar dan A records mengarah ke semua 4 IP GitHub Pages. Coba hapus custom domain di Settings dan tambahkan kembali.

Situs masih menampilkan username.github.io: Pastikan file CNAME ada di root repository dan isinya sudah benar.


Kesimpulan

Menghubungkan custom domain ke GitHub Pages cukup sederhana: tambahkan file CNAME, konfigurasi DNS record, dan aktifkan HTTPS. Prosesnya paling lama membutuhkan waktu 24 jam untuk propagasi DNS, setelah itu blog kamu sudah tampil dengan domain sendiri lengkap dengan HTTPS gratis.

Kiki/🎮🍉⌨️🍩💻
Written by Kiki/🎮🍉⌨️🍩💻
hello I'm friend K.