Blog’a Dön

CDN Nedir? Nasıl Çalışır, Ne İşe Yarar?

CDN nedir, nasıl çalışır? İçerik dağıtım ağının siteyi nasıl hızlandırdığı, önbellek ayarları, Cloudflare kurulumu, DDoS koruması ve oyun sunucuları.

Nodesty Ekibi4 dk okumaHosting
Koyu Nodesty arka planında CDN yazısı ile Cache, Edge ve Cloudflare ifadeleri

CDN (Content Delivery Network, içerik dağıtım ağı), web sitenizin görsel, CSS, JavaScript ve video gibi dosyalarının kopyalarını dünyanın farklı yerlerindeki sunucularda tutan ve her ziyaretçiye en yakın noktadan sunan bir ağdır. Siteniz Frankfurt'taki bir sunucuda dursa bile Tokyo'daki bir ziyaretçi dosyaları yakındaki bir CDN sunucusundan alır. Sonuç: daha hızlı açılan sayfalar, daha az yüklenen bir ana sunucu ve saldırılara karşı ek bir koruma katmanı.

Bu yazıda CDN'in ne olduğunu, nasıl çalıştığını, sitenize ne kazandırdığını, Cloudflare ile nasıl kurulacağını ve oyun sunucularında neden farklı çalıştığını anlatıyoruz.

CDN nasıl çalışır?

CDN sağlayıcılarının dünyanın dört bir yanında uç sunucuları (edge server) ya da PoP (Point of Presence) adı verilen veri merkezleri vardır. Siteniz bir CDN'e bağlandığında süreç şöyle işler:

  1. Ziyaretçi sitenizi açar. DNS, onu kendisine en yakın CDN sunucusuna yönlendirir.
  2. CDN sunucusu istenen dosyanın önbellekte olup olmadığına bakar.
  3. Önbellekte varsa (cache hit) dosyayı doğrudan ziyaretçiye gönderir. Ana sunucunuza hiç gidilmez.
  4. Önbellekte yoksa (cache miss) dosyayı ana sunucunuzdan (origin) alır, ziyaretçiye gönderir ve sonraki ziyaretçiler için bir süre saklar.

Bu sayede bir görsel ilk istendiğinde ana sunucunuzdan, sonraki binlerce istekte CDN'den gelir. Ziyaretçiye olan mesafe kısaldığı için gecikme azalır; gecikmenin neden mesafeyle arttığını Ping nedir? yazımızda anlattık.

CDN ne işe yarar?

  • Hız: Dosyalar ziyaretçiye yakın bir noktadan gelir. Özellikle farklı ülkelerden ziyaretçi alan siteler için fark büyüktür.
  • Sunucu yükünün azalması: Statik dosyaların çoğu CDN'den sunulduğu için ana sunucunuz yalnızca dinamik istekleri karşılar. Ani trafik artışlarında siteniz ayakta kalır.
  • Bant genişliği tasarrufu: Sunucunuzdan çıkan veri miktarı azalır.
  • Güvenlik: CDN'ler ana sunucunuzun IP adresini gizler ve web trafiğine yönelik DDoS saldırılarını kendi ağlarında süzer. Saldırı türlerini DDoS nedir? yazımızda anlattık.
  • Kesintilere dayanıklılık: Bazı CDN'ler ana sunucu kısa süre ulaşılamaz olduğunda önbellekteki sayfaları sunmaya devam edebilir.

Hangi içerikler önbelleğe alınır?

İçerik türüÖnbelleğe alınır mı?
Görseller, videolar, yazı tipleriEvet, en çok fayda sağlayan içeriklerdir
CSS ve JavaScript dosyalarıEvet
Statik HTML sayfalarEvet, kurallarla
WordPress gibi dinamik sayfalarKısmen; giriş yapmış kullanıcılar hariç
Sepet, ödeme, yönetim paneliHayır, her zaman ana sunucudan gelmelidir
API cevaplarıGenellikle hayır

Önbellekte ne kadar kalınacağını sunucunuzun gönderdiği Cache-Control başlığı ya da CDN panelindeki kurallar belirler. Kişiye özel içeriklerin (sepet, hesap sayfası) önbelleğe alınmaması kritik önemdedir; aksi hâlde bir kullanıcının sayfası başka bir kullanıcıya gösterilebilir.

CDN'e her site ihtiyaç duyar mı?

Her site için şart değildir. Ziyaretçilerinizin çoğu sunucunuza yakın bir bölgedeyse ve trafiğiniz düşükse kazanç sınırlı kalır. CDN özellikle şu durumlarda fark yaratır:

  • Farklı ülke ve kıtalardan ziyaretçi alıyorsanız.
  • Sitenizde çok sayıda görsel, video ya da indirme dosyası varsa.
  • Kampanya ve duyurularda ani trafik artışları yaşıyorsanız.
  • Sitenizi web trafiğine yönelik saldırılara karşı korumak istiyorsanız.

Cloudflare ile CDN kurulumu

Cloudflare, ücretsiz planıyla en yaygın kullanılan CDN'lerden biridir. Kurulum genellikle şöyle yapılır:

  1. Cloudflare'de hesap açıp alan adınızı ekleyin. Cloudflare mevcut DNS kayıtlarınızı tarayıp içe aktarır.
  2. Kayıtları kontrol edin; eksik kayıt, özellikle MX ve TXT kayıtları varsa elle ekleyin.
  3. Alan adınızın nameserver'larını kayıt firmanızın panelinden Cloudflare'in verdiği adreslerle değiştirin. Bu değişikliğin yayılması birkaç saat sürebilir.
  4. Web sitesine giden A ve CNAME kayıtlarında turuncu bulutun (Proxied) açık olduğundan emin olun. Turuncu bulut trafiği CDN'den geçirir; gri bulut (DNS only) yalnızca DNS hizmeti verir.
  5. SSL/TLS ayarını Full (strict) yapın. Bunun için hosting sunucunuzda geçerli bir SSL sertifikası bulunmalıdır. "Flexible" mod, Cloudflare ile sunucunuz arasındaki trafiği şifrelemez ve yönlendirme döngülerine yol açabilir.

DNS kayıtlarının nasıl çalıştığını DNS nedir?, SSL ayarlarını SSL sertifikası nedir? yazımızda anlattık.

CDN kullanırken dikkat edilmesi gerekenler

  • Gerçek ziyaretçi IP adresi: Proxy açıkken sunucunuz istekleri CDN'in IP adreslerinden geliyormuş gibi görür. Günlüklerde, güvenlik eklentilerinde ve sınırlamalarda doğru IP'yi görmek için sunucunuzun CDN'in eklediği başlığı (Cloudflare'de CF-Connecting-IP) okuyacak şekilde ayarlanması gerekir.
  • Ana sunucu IP adresini gizli tutun: Proxy'li bir sitenin ana IP adresi başka bir kayıtta (örneğin proxy'siz bir ftp ya da mail kaydında) görünüyorsa saldırganlar CDN'i atlayıp doğrudan sunucuya ulaşabilir.
  • Önbellek temizleme: Siteyi güncelledikten sonra eski dosyalar görünüyorsa CDN panelinden önbelleği temizleyin. Dosya adlarına sürüm eklemek (style.css?v=2) bu sorunu kalıcı olarak çözer.
  • Yönetim panelini hariç tutun: /wp-admin gibi yönetim yollarını önbellek kurallarının dışında bırakın.

Oyun sunucuları ve CDN

CDN'ler web için tasarlanmıştır. Cloudflare'in standart proxy'si yalnızca HTTP ve HTTPS trafiğini taşır; Minecraft, FiveM ya da Rust gibi oyunların TCP ve UDP trafiğini taşımaz. Bu yüzden:

  • Oyun sunucunuzu gösteren mc.alanadiniz.com gibi kayıtları gri bulut (DNS only) ile ekleyin. Turuncu bulut açıkken oyuncular bağlanamaz.
  • Bu kayıtlar sunucunuzun gerçek IP adresini gösterir; oyun sunucusunu saldırılara karşı CDN değil, sunucunun önündeki DDoS koruması korur.
  • Oyun varsayılan dışında bir port kullanıyorsa ve oyun destekliyorsa, oyuncuların port yazmadan bağlanabilmesi için bir SRV kaydı ekleyebilirsiniz. Minecraft Java Edition örneğin _minecraft._tcp SRV kaydını destekler. Minecraft sunucusu kurmayı Minecraft sunucu nasıl kurulur? rehberimizde anlattık.

Nodesty ile CDN

Nodesty web hosting paketleri LiteSpeed web sunucusu ve NVMe diskle zaten hızlı çalışır; Cloudflare gibi bir CDN'i önüne ekleyerek farklı ülkelerdeki ziyaretçileriniz için sayfaları daha da hızlandırabilirsiniz. Ücretsiz SSL sertifikası sayesinde Cloudflare'i güvenli Full (strict) modunda kullanabilirsiniz. Kendi uygulamalarınızı ya da oyun sunucularınızı barındırıyorsanız AMD Ryzen 9 9950X VDS paketlerimizdeki L3–L7 nShield DDoS koruması, CDN'in taşımadığı oyun trafiğini de korur.

Sıkça Sorulan Sorular

CDN kullanmak için hosting değiştirmem gerekir mi?

Hayır. CDN, mevcut hostingin önüne konan ek bir katmandır. Siteniz aynı sunucuda kalır; CDN ziyaretçilere yakın sunucularda içeriğinizin kopyalarını tutar. Genellikle yalnızca DNS ayarlarınızı değiştirmeniz yeterlidir.

CDN ücretsiz mi?

Cloudflare gibi bazı sağlayıcıların küçük ve orta ölçekli siteler için yeterli ücretsiz planları vardır. Diğer CDN'ler genellikle aktarılan veri miktarına göre ücretlendirir. Görsel optimizasyonu, gelişmiş güvenlik kuralları ve özel destek gibi özellikler ücretli planlarda bulunur.

CDN SEO'yu etkiler mi?

Dolaylı olarak olumlu etkiler. Sayfa hızı ve Core Web Vitals değerleri arama sıralamasında dikkate alınır; CDN özellikle uzaktaki ziyaretçiler için sayfaların daha hızlı yüklenmesini sağlar. Yanlış önbellek ayarları ise güncel olmayan içerik gösterilmesine yol açabileceği için dikkatli yapılandırılmalıdır.

Sitemi güncelledim ama değişiklik görünmüyor, neden?

CDN, eski sürümü önbellekte tutuyor olabilir. CDN panelinden ilgili adresin ya da tüm önbelleğin temizlenmesini (purge) isteyin. CSS ve JavaScript dosyalarının adına sürüm numarası eklemek bu sorunu kalıcı olarak önler.

Minecraft sunucumu Cloudflare'in arkasına alabilir miyim?

Cloudflare'in ücretsiz proxy'si yalnızca web trafiğini (HTTP ve HTTPS) taşır. Minecraft ve diğer oyun sunucularının kayıtlarını proxy kapalı (gri bulut, DNS only) olarak eklemeniz gerekir; aksi hâlde oyuncular bağlanamaz. Oyun sunucularını saldırılara karşı korumak için sunucu tarafında DDoS koruması gerekir.

CDN ile web hosting arasındaki fark nedir?

Web hosting sitenizin asıl dosyalarını ve veritabanını barındırır, PHP gibi kodları çalıştırır. CDN ise bu sunucunun önünde durup statik dosyaların kopyalarını ziyaretçilere yakın noktalardan sunar. CDN tek başına bir site barındırmaz; bir hostinge ihtiyaç duyar.

Nodesty

Yazar hakkında

Nodesty Ekibi · Altyapı ve Destek

Nodesty ekibi sunucularımızı, ağımızı ve DDoS korumamızı her gün işletir ve müşteri destek taleplerini 7/24 yanıtlar. Bu rehberler o deneyimden yazılır.

İlgili yazılar

Sunucunuzu şimdi başlatın.

Nodesty'nin üstün altyapısı ile projelerinizi özgürce inşa edin ve sınır tanımadan ölçeklendirin.

                                                                                                                                                                                                                            
                                                                                                                                                                                                                            
                                                                                                                                                                                                                            
                                                                                                                             ············································                                                   
                                                ··································································································..........···························                                     
                                       ················..........................................................................................................................··············                             
                                  ·············.................::::::::::::::::::::::::::::::::::::::::::::::....................:::::::::::::::::::::::::::::::::::::::................···········                        
                             ············................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::............·········                     
                         ············.................:::::::::::::::::::::::::::::::::::::::::::::::::::------------::::::::::::::::::::::::::::::----------------:::::::::::::::::::::..........········                  
                    ············......................::::::::::::::::::::::::::::::::::::------------------------------------------------------------------------------------:::::::::::::.........········                
                ··········.............................................::::::::::::::::::-------------==========================================-----------------------------------:::::::::::........·······               
             ········..................:.....................................::::::::::--------=======+++++++++++++++++++++++++++++++++++++=========================------------------::::::::::.......·······              
           ······.........::::::::::::::::::::................................:::::::-----=====++++xxxxxx**************************xxxxxxxxx++++++++++++++===================------------::::::::.......·······             
          ·····.......:::::::::::::::::::::::::::.............................:::::----===+++xxx****%%%%&&&&&&#############&&&&&&&%%%%%*******xxxxxxxx++++++++++++++==============----------:::::::......······             
         ····......::::::::-------------:::::::::::..........................::::---===+++xx***%%%&&&####@@@@@@@@@@@@@@@@@@@@@@@@####&&&&&%%%%*******xxxxxxxxx+++++++++++++===========--------::::::......·····             
        ····.....:::::::--------------------:::::::::.......................::::---===++xxx**%%&&&###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###&&&&%%%%%********xxxxxxxxxxx++++++++++++========------::::::.....······            
        ····.....:::::--------------------------::::::::....................::::---===++xx***%%&&&####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###&&&&&%%%%%**********xxxxxxxxxxxxx+++++++++=======------:::::.....·····            
        ····....::::::-------=============---------:::::::::................:::::---===+++xx***%%%&&&#####@@@@@@@@@@@@@@@@@@@@@@@@@#####&&&&&%%%%%%*************xxxxxxxxxxxxxx+++++++++======-----:::::....·····            
         ····....:::::-------================---------:::::::::...............:::::----===++++xxx***%%%%&&&&&&#################&&&&&&%%%%%%%*******************xxxxxxxxxxxxxxxxx++++++++======----:::::....·····            
         ·····....:::::--------=================---------::::::::::..............:::::::-----====+++++xxxxxx**************************xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx++++++++=====-----::::....·····            
          ·····.....:::::--------=================----------:::::::::::.................:::::::::-------=============++++++++++++++++++++++++++++++++++++xxxxxxxxxxxxxxxxxxxxxxx++++++++======-----::::....·····            
            ·····.....:::::::----------===========-------------::::::::::::.........................::::::::::::::::::------------------=============+++++++++++++++++++++++++++++++++=======-----::::.....·····            
              ······......:::::::---------------------------------:::::::::::::........................................:::::::::::::::-----------============+++++++++++++++++++++========------:::::.....·····             
                 ······........:::::::::---------------------------:::::::::::::::::...........................................:::::::::::::------------=============================--------::::::.....······              
                    ·········.........:::::::::::::::-------------::::::::::::::::::::::::.......................................::::::::::::::::--------------------------------------::::::::......·······                
                          ··········............::::::::::::::::::::::::::::::::::::::::::::::::::................................::::::::::::::::::::::::::-------------:::::::::::::::.........········                   
                                  ············..................:::::::::::::::::::::::::::::::::::::::::::.........................:::::::::::::::::::::::::::::::::::::................···········                        
                                             ················.............................................................................................................·················                                 
                                                           ······················................................................................···························                                                
                                                                               ·········································································