GitHub Pages Özel Alan Adı: DNS, CNAME ve HTTPS Kurulumu

GitHub Pages özel alan adı nasıl bağlanır: apex ve www için DNS kayıtları, CNAME dosyasının işlevi, alan adı doğrulaması ve HTTPS'i açma adımları.

Sıkça sorulan sorular

GitHub Pages apex alan adı için hangi IP adreslerini kullanmalıyım?

GitHub'ın dokümanlarında (Kasım 2026'da kontrol edildi) apex host (@) için dört A kaydı listelenir: 185.199.108.153, 185.199.109.153, 185.199.110.153 ve 185.199.111.153. IPv6 de istiyorsanız dört AAAA kaydı ekleyin: 2606:50c0:8000::153, 2606:50c0:8001::153, 2606:50c0:8002::153 ve 2606:50c0:8003::153. GitHub, AAAA kayıtlarının yanında A kayıtlarını da tutmanızı önerir. GitHub bu değerleri değiştirebileceği için yapıştırmadan önce dokümanla karşılaştırın.

Deposunda (repository) CNAME dosyası olması gerekir mi?

Yalnızca bir daldan (branch) yayın yapıyorsanız. Bu durumda Settings > Pages bölümünde özel alan adını kaydettiğinizde GitHub, kaynak dalın kök dizinine sizin için bir CNAME dosyası commit eder. Özel bir GitHub Actions iş akışıyla yayın yapıyorsanız GitHub, CNAME dosyası oluşturulmadığını, mevcut bir dosya varsa yok sayıldığını ve gerekli olmadığını belirtir.

Enforce HTTPS (HTTPS'i zorunlu kıl) kutusu neden gri ve tıklanamıyor?

GitHub, alan adını ekledikten sonra bu seçeneğin kullanılabilir hale gelmesinin 24 saati bulabileceğini söyler. Sertifika otomatik olarak verilir; dolayısıyla kutunun takılı kalmasının olağan nedenleri henüz yayılmamış DNS ya da fazladan kayıtlardır: apex üzerinde ek A, AAAA, ALIAS veya ANAME kayıtları ya da www üzerinde GitHub dışına işaret eden bir CNAME gibi. GitHub ayrıca alan adının 64 karakterden kısa olması gerektiğini belirtir. İşlem takılırsa alan adının yanındaki Remove (Kaldır) düğmesine tıklayın, alan adını yeniden yazıp tekrar kaydedin.

Apex alan adını mı yoksa www'yu mu kullanmalıyım?

GitHub www önerir. Dokümanlarına göre www alt alan adları, GitHub'ın sunucu IP adreslerindeki değişikliklerden etkilenmediği için en kararlı özel alan adı türüdür. Hangisini özel alan adı olarak ayarlarsanız ayarlayın, iki tarafın DNS'i de GitHub Pages'e işaret ettiği sürece GitHub diğerini ona yönlendirir.

GitHub Pages özel alan adının çalışması ne kadar sürer?

GitHub, DNS değişikliklerinin yayılmasının 24 saati bulabileceğini söyler. Pratikte birçok kayıt daha erken çözülür, ancak bir şeyin bozuk olduğunu düşünmeden önce bir günü göze alın.

GitHub Pages için joker karakterli (wildcard) DNS kaydı kullanmak güvenli mi?

GitHub, *.example.com gibi joker karakterli kayıtlara karşı kesinlikle uyarır. Dokümanlarına göre alan adını doğrulamış olsanız bile bu kayıtlar sizi doğrudan alan adı ele geçirme riskine sokar. Bunun yerine kullandığınız alt alan adları için ayrı ayrı kayıt oluşturun.

Kısa cevap: Deponuzda Settings (Ayarlar) > Pages bölümüne gidin, Custom domain (Özel alan adı) alanına alan adınızı yazıp kaydedin. Ardından DNS sağlayıcınızda www için <username>.github.io adresine işaret eden bir CNAME kaydı, çıplak alan adı (example.com) için de GitHub'a işaret eden dört A kaydı oluşturun. GitHub sertifikayı verdiğinde Enforce HTTPS kutusunu işaretleyin. Tüm iş bir depo ayarı ve birkaç DNS kaydından ibarettir. Gecikmelerin çoğu, GitHub'a göre 24 saati bulabilen DNS yayılmasından kaynaklanır.

Aşağıdaki her şey Kasım 2026'da GitHub'ın kendi dokümanlarıyla karşılaştırılarak kontrol edildi. En çok değişme ihtimali olan kısım DNS değerleridir; bu yüzden yapıştırmadan önce GitHub Pages özel alan adı dokümanından teyit edin.

Önce alan adı türünüzü seçin

Ziyaretçilerin açılmasını istediğiniz adresÖzel alan adı olarak ayarlayınGereken DNS kayıtlarıNotlar
www.example.comwww.example.comwww üzerinde <username>.github.io adresine CNAME, ayrıca apex üzerinde A kayıtlarıGitHub'ın önerdiği kurulum. example.com, www'ya yönlendirilir.
example.comexample.comApex üzerinde A kayıtları (veya tek bir ALIAS/ANAME), ayrıca www üzerinde CNAMEwww.example.com, apex'e yönlendirilir.
blog.example.comblog.example.comblog üzerinde <username>.github.io adresine CNAMEApex kaydı gerekmez.

GitHub'ın dokümanlarına göre www alt alan adları, GitHub'ın sunucu IP adreslerindeki değişikliklerden etkilenmedikleri için en kararlı seçimdir. Çıplak alan adını kullanmak için güçlü bir nedeniniz yoksa www'yu seçin. Hâlâ bir alan adı sağlayıcısı arıyorsanız alan adı sağlayıcıları karşılaştırmamız seçenekleri ele alıyor, bir alan adının maliyeti yazımız ise yenileme fiyatlarını açıklıyor.

Adım adım: alan adını bağlama

  1. Alan adını GitHub'a ekleyin. Deponuzu açın, Settings'e, ardından Pages'e tıklayın ("Code, planning, and automation" başlığı altında). Settings sekmesi görünmüyorsa "More" açılır menüsüne bakın. Alan adınızı Custom domain alanına yazın ve Save'e tıklayın.
  2. GitHub'ın deponuzda ne yaptığını kontrol edin. Bir daldan yayın yapıyorsanız GitHub, o dalın kök dizinine bir CNAME dosyası commit eder. Özel bir GitHub Actions iş akışından yayın yapıyorsanız CNAME dosyası oluşturulmaz, mevcut bir dosya varsa yok sayılır.
  3. Varsayılan DNS kayıtlarını silin. DNS sağlayıcınız kullanacağınız host için otomatik bir park (parking) veya varsayılan kayıt oluşturduysa önce onu silin.
  4. DNS kayıtlarını oluşturun (bir sonraki bölüme bakın).
  5. Yayılmayı bekleyin. GitHub 24 saate kadar süreceğini söyler. İlerlemeyi terminalden dig www.example.com +noall +answer ile kontrol edebilirsiniz.
  6. HTTPS'i zorunlu kılın. Seçenek kullanılabilir hale geldiğinde Enforce HTTPS'i işaretleyin (aşağıya bakın).

Sıra sandığınızdan daha az önemli

DNS kayıtlarını alan adını GitHub'a kaydetmeden önce de sonra da oluşturabilirsiniz. Asıl risk, hiçbir depo alan adını sahiplenmemişken DNS'in GitHub Pages'e işaret etmesidir. GitHub, alan adını GitHub'a eklemeden DNS yapılandırmanın başkasının alt alan adlarınızdan birinde site yayınlamasına yol açabileceği konusunda uyarır. Önce alan adını GitHub'a kaydedin, sonra DNS'i yapın.

DNS kayıtları

www veya herhangi bir alt alan adı: tek bir CNAME

TürHostDeğer
CNAMEwww<username>.github.io

Depo adını değil, kullanıcı adınızı veya organizasyon adınızı kullanın. GitHub, CNAME'i depo ayarlarınızda görünen benzersiz *.pages.github.io adresine yönlendirmemenizi özellikle belirtir.

Apex alan adı: dört A kaydı (Kasım 2026'da kontrol edildi)

TürHostDeğer
A@185.199.108.153
A@185.199.109.153
A@185.199.110.153
A@185.199.111.153

İsterseniz isteğe bağlı IPv6 için @ üzerinde AAAA kayıtları:

TürHostDeğer
AAAA@2606:50c0:8000::153
AAAA@2606:50c0:8001::153
AAAA@2606:50c0:8002::153
AAAA@2606:50c0:8003::153

IPv6 kullanımı hâlâ eşit yaygınlıkta olmadığı için GitHub, AAAA kayıtları ekleseniz bile A kayıtlarını eklemenizi önerir. DNS sağlayıcınız ALIAS veya ANAME kayıtlarını destekliyorsa A ve AAAA kayıtları yerine <username>.github.io adresine işaret eden tek bir kayıt kullanabilirsiniz.

Kaçınmanız gereken iki hata:

  • Apex üzerinde fazladan kayıtlar. GitHub, @ üzerindeki ek A, AAAA, ALIAS veya ANAME kayıtlarının ya da www üzerinde başka yere işaret eden bir CNAME'in HTTPS sertifikasının oluşturulmasını engelleyebileceğini söyler.
  • Bir alt alan adını apex'e yönlendirmek. GitHub bunun HTTPS'i zorunlu kılmada sorun çıkardığı ve alt alan adının sitenize hiç ulaşamamasına yol açabileceği konusunda uyarır. Alt alan adlarını <username>.github.io adresine yönlendirin.

Bazı sağlayıcılar apex host için @ kullanır, bazıları alanı boş bırakmanızı ya da alan adının tamamını yazmanızı ister. Bu bir sağlayıcı farklılığıdır, GitHub ayarı değildir.

HTTPS'i açın

GitHub, özel alan adları için sertifikaları Let's Encrypt üzerinden verir. DNS doğru çözüldükten sonra:

  1. Settings > Pages bölümüne geri dönün.
  2. Alan adınızın yanında DNS kontrolünün geçtiğini gösteren bir onay işareti arayın.
  3. Enforce HTTPS kutusunu işaretleyin.

GitHub, seçeneğin kullanılabilir olmasının 24 saati bulabileceğini söyler. Kaydettikten birkaç dakika sonra hâlâ görünmüyorsa GitHub'ın önerdiği çözüm, özel alan adının yanındaki Remove'a tıklamak, alan adını yeniden yazmak ve tekrar Save'e tıklamaktır. Sertifikanın oluşturulabilmesi için alan adının 64 karakterden kısa olması da gerekir.

Kutu gri kalmaya devam ederse şu listeyi gözden geçirin:

  • [ ] Host için DNS GitHub'a çözülüyor (dig dört IP'yi veya <username>.github.io CNAME'inizi gösteriyor)
  • [ ] Apex üzerinde fazladan A, AAAA, ALIAS veya ANAME kaydı yok
  • [ ] www CNAME'i apex'e ya da pages.github.io adresine değil, <username>.github.io adresine işaret ediyor
  • [ ] Settings > Pages'teki alan adı, DNS'e yazdığınızla birebir aynı
  • [ ] Alan adını bir kez kaldırıp yeniden eklediniz

Alan adını doğrulayın (şiddetle önerilir)

Doğrulama, Pages siteniz bir gün bağlantısından koparsa başka GitHub hesaplarının alan adınızı sahiplenmesini engeller. GitHub; depoyu sildiğinizde, faturalandırma planınız düşürüldüğünde veya alan adı GitHub Pages için yapılandırılmış ve doğrulanmamış halde kalırken bağlantısını koparan herhangi bir değişiklikte alan adı ele geçirilmesinin mümkün olduğunu belirtir.

  1. Depo ayarlarını değil, profil ayarlarınızı açın, ardından kenar çubuğundan Pages'i seçin.
  2. Add a domain'e tıklayın, alan adını girin ve onaylayın.
  3. GitHub'ın gösterdiği TXT kaydını oluşturun. Host şuna benzer olacaktır: _github-pages-challenge-USERNAME.example.com.
  4. Kaydın görünür olduğunu dig _github-pages-challenge-USERNAME.example.com +nostats +nocomments +nocmd TXT ile doğrulayın.
  5. GitHub'a dönün, alan adının yanındaki menüden Continue verifying'i, ardından Verify'ı seçin.

GitHub bunun anında olabileceğini ya da 24 saati bulabileceğini söyler. TXT kaydını sonrasında yerinde bırakın. Ayrıca *.example.com gibi joker karakterli kayıtlardan uzak durun: GitHub, alan adı doğrulanmış olsa bile bunların ele geçirme riski taşıdığını söyler.

Sık karşılaşılan sorunlar

  • Özel alan adında 404, ama site github.io adresinde çalışıyor. Alan adı Settings > Pages'te hiç kaydedilmemiş ya da DNS henüz yayılmamıştır. İkisini de kontrol edin.
  • Alan adı her yayından sonra sıfırlanıyor. Bir daldan yayın yapıyorsanız kaynak daldaki CNAME dosyası alan adınızı içermelidir. Dal kök dizinini silen bir derleme ya da dosyayı atlayan bir yayın onu kaldırabilir. Özel bir Actions iş akışına geçmek dosyayı gereksiz kılar.
  • Apex çalışıyor, www çalışmıyor (ya da tersi). Her iki host için de kayıt gerekir. GitHub'ın eşleşen hostu yalnızca onun DNS'i de GitHub Pages'e işaret ediyorsa yönlendirdiğini unutmayın.
  • Sertifika bir türlü gelmiyor. Yukarıdaki kontrol listesini uygulayın, önce başıboş kayıtlara bakın.

DNS'i kendiniz yönetmek istemiyorsanız

GitHub Pages, zaten bir depoda tuttuğunuz statik siteler için iyi bir seçimdir. Asıl ihtiyacınız kendi alan adınızla bir siteyi yayına almaksa We.Inc özel alan adları aynı DNS adımında sizi doğrudan oluşturucunun içinde yönlendirir, alan adı bağlama rehberi ise her sağlayıcı için konuyu anlatır. We.Inc'in ücretsiz planı, hazır şablonlardan üç siteye kadar yayınlamanıza izin verir; bir istemden site taslağı hazırlayan yapay zekâ oluşturucu ise ayda $20 olan Starter planıyla başlar. Buradan kayıt olabilirsiniz.

Ücretsiz başlayın · Kredi kartı gerekmez

Umair Ali Sadaqat

We.Inc Kurucusu

Umair, We.Inc’in kurucusudur. Yapay zekâyla web sitesi oluşturma, ajanslar ve web stüdyosu işletmeciliği hakkında yazar.

Harika bir şey oluşturmaya hazır mısınız?

Tek platformdan başlamak, büyümek ve otomatikleştirmek için We.Inc kullanan 15,000+ işletmeye katılın.

Ücretsiz Başlayın

Kredi kartı gerekmez · Satış ekibiyle görüşün

İlgili: Blog

Ürün

Kimler için

Özellikler

Kaynaklar

Şirket

Site haritası