Domain Kustom GitHub Pages: Pengaturan DNS, CNAME, dan HTTPS

Cara mengatur domain kustom GitHub Pages: record DNS untuk apex dan www, fungsi file CNAME, verifikasi domain, dan cara mengaktifkan HTTPS.

Pertanyaan yang sering diajukan

Alamat IP apa yang dipakai untuk apex domain GitHub Pages?

Dokumentasi GitHub (dicek November 2026) mencantumkan empat A record untuk host apex (@): 185.199.108.153, 185.199.109.153, 185.199.110.153, dan 185.199.111.153. Jika Anda juga ingin memakai IPv6, tambahkan empat AAAA record: 2606:50c0:8000::153, 2606:50c0:8001::153, 2606:50c0:8002::153, dan 2606:50c0:8003::153. GitHub menyarankan agar A record tetap dipertahankan bersama AAAA record. Cocokkan dulu dengan dokumentasinya sebelum menyalin, karena GitHub bisa saja mengubah nilai-nilai ini.

Apakah saya perlu file CNAME di repositori?

Hanya jika Anda memublikasikan dari sebuah branch. Dalam kasus itu, menyimpan domain kustom di Settings > Pages akan otomatis membuat commit file CNAME di root branch sumber. Jika Anda memublikasikan dengan workflow GitHub Actions kustom, menurut GitHub tidak ada file CNAME yang dibuat, dan file CNAME yang sudah ada akan diabaikan serta tidak diperlukan.

Mengapa kotak centang Enforce HTTPS berwarna abu-abu dan tidak bisa dipilih?

Menurut GitHub, opsi ini bisa butuh waktu hingga 24 jam untuk tersedia setelah Anda menambahkan domain. Sertifikat diterbitkan secara otomatis, jadi penyebab yang paling sering adalah DNS yang belum menyebar (propagasi) atau adanya record tambahan, seperti A, AAAA, ALIAS, atau ANAME ekstra di apex, atau CNAME di www yang mengarah ke tempat selain GitHub. GitHub juga mencatat bahwa panjang domain harus kurang dari 64 karakter. Jika tetap macet, klik Remove di sebelah domain, ketik ulang, lalu simpan lagi.

Sebaiknya pakai apex domain atau www?

GitHub menyarankan www. Dokumentasinya menyebut subdomain www adalah jenis domain kustom yang paling stabil karena tidak terpengaruh perubahan alamat IP server GitHub. Mana pun yang Anda tetapkan sebagai domain kustom, GitHub akan mengalihkan yang satunya ke domain tersebut, selama DNS keduanya mengarah ke GitHub Pages.

Berapa lama domain kustom GitHub Pages baru bisa aktif?

Menurut GitHub, perubahan DNS bisa butuh waktu hingga 24 jam untuk menyebar. Dalam praktiknya banyak record yang sudah aktif lebih cepat, tetapi sediakan waktu sehari penuh sebelum menyimpulkan ada yang rusak.

Amankah memakai wildcard DNS record untuk GitHub Pages?

GitHub sangat menyarankan untuk tidak memakai record wildcard seperti *.example.com. Menurut dokumentasinya, record semacam itu langsung membuat Anda berisiko terkena pengambilalihan domain (domain takeover), bahkan jika domain sudah diverifikasi. Sebaiknya buat record untuk setiap subdomain spesifik yang Anda pakai.

Jawaban singkat: Di repositori Anda, buka Settings > Pages, ketik domain Anda di kolom Custom domain, lalu simpan. Setelah itu, di penyedia DNS Anda, arahkan www ke <username>.github.io dengan record CNAME, dan arahkan domain utama (example.com) ke GitHub dengan empat A record. Setelah GitHub selesai menerbitkan sertifikat, centang Enforce HTTPS. Intinya hanya satu pengaturan di repo ditambah beberapa record DNS. Sebagian besar keterlambatan berasal dari propagasi DNS, yang menurut GitHub bisa memakan waktu hingga 24 jam.

Semua yang dibahas di bawah ini dicek terhadap dokumentasi resmi GitHub pada November 2026. Nilai DNS adalah bagian yang paling mungkin berubah, jadi pastikan lagi di dokumentasi domain kustom GitHub Pages sebelum Anda menyalinnya.

Tentukan dulu jenis domainnya

Tujuan halaman utama pengunjungAtur sebagai domain kustomRecord DNS yang dibutuhkanCatatan
www.example.comwww.example.comCNAME di www ke <username>.github.io, plus A record di apexPengaturan yang direkomendasikan GitHub. example.com dialihkan ke www.
example.comexample.comA record di apex (atau satu ALIAS/ANAME), plus CNAME di wwwwww.example.com dialihkan ke apex.
blog.example.comblog.example.comCNAME di blog ke <username>.github.ioTidak perlu record apex.

Menurut dokumentasi GitHub, subdomain www adalah pilihan paling stabil karena tidak terpengaruh perubahan alamat IP server GitHub. Kalau tidak ada alasan kuat untuk memakai domain utama tanpa www, pilih www saja. Jika Anda masih mencari registrar, perbandingan registrar domain kami membahas pilihan yang ada, dan biaya sebuah domain menjelaskan harga perpanjangan.

Langkah demi langkah: menghubungkan domain

  1. Tambahkan domain di GitHub. Buka repositori Anda, klik Settings, lalu Pages (di bawah "Code, planning, and automation"). Jika tab Settings tersembunyi, cari di menu dropdown "More". Ketik domain Anda di kolom Custom domain, lalu klik Save.
  2. Periksa apa yang dilakukan GitHub pada repo Anda. Jika Anda memublikasikan dari sebuah branch, GitHub membuat commit file CNAME di root branch tersebut. Jika Anda memublikasikan dari workflow GitHub Actions kustom, tidak ada file CNAME yang dibuat, dan file yang sudah ada akan diabaikan.
  3. Hapus record DNS bawaan. Jika penyedia DNS Anda otomatis membuat record parkir atau record default untuk host yang akan Anda pakai, hapus dulu record itu.
  4. Buat record DNS di penyedia DNS Anda (lihat bagian berikutnya).
  5. Tunggu propagasi. Menurut GitHub, hingga 24 jam. Anda bisa memeriksa progresnya dari terminal dengan dig www.example.com +noall +answer.
  6. Aktifkan Enforce HTTPS setelah opsinya tersedia (lihat di bawah).

Urutan tidak sepenting yang dikira

Anda bisa membuat record DNS sebelum atau sesudah menyimpan domain di GitHub. Risikonya adalah membiarkan DNS mengarah ke GitHub Pages padahal domain belum diklaim oleh repo mana pun. GitHub memperingatkan bahwa mengatur DNS tanpa menambahkan domain ke GitHub dapat membuat orang lain menghosting situs di salah satu subdomain Anda. Simpan domain di GitHub lebih dulu, baru atur DNS.

Record DNS

www atau subdomain apa pun: satu CNAME

TipeHostNilai
CNAMEwww<username>.github.io

Gunakan nama pengguna atau nama organisasi Anda, tanpa nama repositori. GitHub secara khusus menyatakan agar CNAME tidak diarahkan ke alamat unik *.pages.github.io yang tampil di pengaturan repositori Anda.

Apex domain: empat A record (dicek November 2026)

TipeHostNilai
A@185.199.108.153
A@185.199.109.153
A@185.199.110.153
A@185.199.111.153

Opsional, jika Anda ingin IPv6, tambahkan sebagai AAAA record di @:

TipeHostNilai
AAAA@2606:50c0:8000::153
AAAA@2606:50c0:8001::153
AAAA@2606:50c0:8002::153
AAAA@2606:50c0:8003::153

GitHub menyarankan tetap menambahkan A record meskipun Anda sudah menambahkan AAAA record, karena adopsi IPv6 masih belum merata. Jika penyedia DNS Anda mendukung record ALIAS atau ANAME, Anda bisa memakai satu record yang mengarah ke <username>.github.io sebagai pengganti A dan AAAA record.

Dua kesalahan yang perlu dihindari:

  • Record tambahan di apex. Menurut GitHub, A, AAAA, ALIAS, atau ANAME tambahan di @, atau CNAME di www yang mengarah ke tempat lain, dapat menghalangi pembuatan sertifikat HTTPS.
  • Mengarahkan subdomain ke apex. GitHub memperingatkan bahwa ini menimbulkan masalah saat mengaktifkan HTTPS dan bisa membuat subdomain sama sekali tidak mencapai situs Anda. Arahkan subdomain ke <username>.github.io.

Beberapa penyedia memakai @ untuk host apex, sementara yang lain meminta Anda mengosongkan kolomnya atau mengetik domain lengkap. Itu kebiasaan masing-masing penyedia, bukan pengaturan GitHub.

Aktifkan HTTPS

GitHub menerbitkan sertifikat untuk domain kustom lewat Let's Encrypt. Setelah DNS mengarah dengan benar:

  1. Kembali ke Settings > Pages.
  2. Cari tanda centang di samping domain Anda, yang berarti pemeriksaan DNS berhasil.
  3. Centang Enforce HTTPS.

Menurut GitHub, opsi ini bisa butuh waktu hingga 24 jam untuk tersedia. Jika belum muncul beberapa menit setelah Anda menyimpan, saran GitHub adalah klik Remove di sebelah domain kustom, ketik ulang, lalu klik Save lagi. Panjang domain juga harus kurang dari 64 karakter agar sertifikat bisa dibuat.

Jika kotak centang tetap abu-abu, periksa daftar berikut:

  • [ ] DNS untuk host tersebut mengarah ke GitHub (dig menampilkan keempat IP atau CNAME <username>.github.io Anda)
  • [ ] Tidak ada A, AAAA, ALIAS, atau ANAME tambahan di apex
  • [ ] CNAME www mengarah ke <username>.github.io, bukan ke apex atau alamat pages.github.io
  • [ ] Domain di Settings > Pages persis sama dengan yang Anda ketik di DNS
  • [ ] Anda sudah menghapus dan menambahkan ulang domain satu kali

Verifikasi domain (sangat disarankan)

Verifikasi mencegah akun GitHub lain mengklaim domain Anda jika situs Pages Anda suatu saat terlepas. GitHub menyebut pengambilalihan domain bisa terjadi saat Anda menghapus repositori, saat paket penagihan Anda diturunkan, atau setelah perubahan apa pun yang melepas domain padahal domain masih dikonfigurasi untuk GitHub Pages dan belum diverifikasi.

  1. Buka pengaturan profil Anda (bukan pengaturan repo), lalu Pages di sidebar.
  2. Klik Add a domain, masukkan domainnya, lalu konfirmasi.
  3. Buat record TXT yang ditampilkan GitHub. Host-nya akan berbentuk _github-pages-challenge-USERNAME.example.com.
  4. Pastikan record tersebut sudah terlihat dengan dig _github-pages-challenge-USERNAME.example.com +nostats +nocomments +nocmd TXT.
  5. Kembali ke GitHub, gunakan menu di samping domain, pilih Continue verifying, lalu Verify.

Menurut GitHub, ini bisa langsung berhasil atau butuh hingga 24 jam. Biarkan record TXT tetap ada setelahnya. Hindari juga record wildcard seperti *.example.com: menurut GitHub, record itu berisiko terkena pengambilalihan bahkan ketika domain sudah diverifikasi.

Masalah umum

  • 404 di domain kustom, padahal situs berjalan di github.io. Domain belum pernah disimpan di Settings > Pages, atau DNS belum menyebar. Periksa keduanya.
  • Domain terus kembali ke awal setelah deploy. Jika Anda memublikasikan dari branch, file CNAME di branch sumber harus berisi domain Anda. Proses build yang menghapus root branch, atau deploy yang tidak menyertakan file tersebut, bisa menghilangkannya. Beralih ke workflow Actions kustom membuat file itu tidak diperlukan lagi.
  • Apex berfungsi, www tidak (atau sebaliknya). Kedua host butuh record. Ingat bahwa GitHub hanya mengalihkan host pasangannya jika DNS-nya juga mengarah ke GitHub Pages.
  • Sertifikat tidak kunjung datang. Jalankan daftar periksa di atas, dan cari record nyasar terlebih dulu.

Jika Anda tidak ingin mengurus DNS sendiri

GitHub Pages cocok untuk situs statis yang sudah Anda simpan di repositori. Jika Anda terutama butuh situs online dengan domain sendiri, domain kustom We.Inc memandu Anda melewati langkah DNS yang sama langsung di dalam builder, dan panduan menghubungkan domain membahasnya untuk penyedia mana pun. Paket gratis We.Inc memungkinkan Anda memublikasikan hingga tiga situs dari template siap pakai; AI builder yang menyusun draf situs dari sebuah prompt tersedia mulai dari paket Starter seharga $20 per bulan. Anda bisa mendaftar di sini.

Mulai gratis · Tanpa kartu kredit

Umair Ali Sadaqat

Pendiri We.Inc

Umair adalah pendiri We.Inc. Ia menulis tentang pembuatan situs web dengan AI, agensi, dan bisnis menjalankan studio web.

Siap membuat sesuatu yang hebat?

Bergabunglah dengan 15,000+ bisnis yang memakai We.Inc untuk meluncurkan, berkembang, dan mengotomatiskan, semuanya dari satu platform.

Mulai gratis

Tanpa kartu kredit · Hubungi tim penjualan

Terkait: Blog

Produk

Untuk siapa

Fitur

Sumber daya

Perusahaan

Peta situs