• Home
  • Alan Adı
  • CDN Nedir? WordPress ve E-Ticaret Siteleri İçin Kurulum Rehberi
cdn-nedir-wordpress-ve-e-ticaret-siteleri-icin-kurulum-rehberi

CDN Nedir? WordPress ve E-Ticaret Siteleri İçin Kurulum Rehberi

Sharing is caring!

CDN Nedir? En Basit Haliyle Anlatım

WordPress veya e-ticaret siteniz büyüdükçe, sayfa hızının satışları ve SEO performansını ne kadar etkilediğini daha net görmeye başlıyorsunuz. Özellikle Türkiye merkezli bir projede, Avrupa’dan, Amerika’dan veya Ortadoğu’dan trafik almaya başladığınızda, tek bir veri merkezindeki sunucu ile herkese aynı hızda hizmet vermek imkansız hale geliyor. Tam bu noktada CDN (Content Delivery Network – İçerik Dağıtım Ağı) devreye giriyor. Kısaca CDN, web sitenizin statik içeriklerini (görseller, CSS, JS, fontlar vb.) dünyanın farklı bölgelerindeki önbellek sunucularında tutup, ziyaretçiye en yakın noktadan servis eden bir ağ yapısıdır.

Yani Ankara’daki sunucunuzdan tek tek dosya çekmek yerine, Londra’daki ziyaretçinize Londra’daki CDN sunucusundan, Frankfurt’taki kullanıcıya Frankfurt’taki CDN sunucusundan cevap verirsiniz. Bu sayede gecikme süresi (latency) düşer, ilk bayta yanıt süresi (TTFB) iyileşir ve özellikle mobil kullanıcılarda sayfa yüklenme süreleri ciddi anlamda kısalır. Daha önce Paylaşımlı hosting odaklı olarak CDN ile site hızlandırma rehberi yazmıştım; bu yazıda ise özellikle WordPress ve e-ticaret projeleri için adım adım kurulum ve dikkat etmeniz gerekenleri anlatacağım.

CDN Neden WordPress ve E-Ticaret Siteleri İçin Bu Kadar Önemli?

WordPress ile içerik üreten bir blog sahibiyseniz veya Woocommerce, OpenCart vb. ile çalışan bir e-ticaret siteniz varsa, performans sizin için sadece “konfor” değil, doğrudan gelir demek. Sayfa açılış süresi 1 saniyeden 4 saniyeye çıktığında, kullanıcıların önemli bir kısmı sayfayı terk ediyor. Özellikle ürün listeleme, kategori, kampanya ve blog yazısı sayfaları yoğun görsel ve JS içerdiği için doğru yapılandırılmış bir CDN burada ciddi fark yaratıyor.

Daha önce WordPress tarafında sunucu ve yazılım katmanı ayarlarını detaylandırdığım WordPress siteleri için VPS optimizasyonu rehberinde MySQL, PHP ve önbellek ayarlarıyla hız kazanabileceğinizi anlatmıştım. CDN ise bu optimizasyonların üstüne eklenen, özellikle coğrafi dağıtım odaklı bir performans katmanı. Kendi müşterilerimde gördüğüm tipik senaryo şu: İyi optimize edilmiş bir WordPress + CDN kombinasyonu ile ilk anlamlı boyama (FMP) ve LCP (Largest Contentful Paint) metriklerinde yüzde 30-50’ye varan iyileşme mümkün oluyor.

E-ticaret tarafında ise konu sadece hız değil. Yoğun kampanya dönemleri (örneğin büyük indirim günleri) sırasında ana sunucunun üzerindeki trafik yükünün önemli kısmını CDN’e devrederek, hem yanıt sürelerini koruyabiliyor hem de sunucu kaynaklarını (CPU, RAM, disk IO) daha verimli kullanabiliyorsunuz. Bu da ölçeklenme maliyetini azaltıyor ve altyapıyı daha öngörülebilir hale getiriyor.

CDN Nasıl Çalışır? Temel Bileşenler ve Kavramlar

CDN mimarisini ilk kez kurarken, altındaki temel kavramları bilmek hata yapma ihtimalinizi ciddi şekilde azaltıyor. Kısaca özetleyeyim:

  • Origin (Kaynak) Sunucu: Asıl web sitenizin barındığı sunucu. DCHost üzerinde barındırdığınız WordPress veya e-ticaret siteniz bu rolü üstlenir.
  • Edge Sunucular (PoP Noktaları): CDN sağlayıcısının dünyanın farklı yerlerindeki önbellek (cache) sunucuları. Ziyaretçiler, coğrafi olarak kendilerine en yakın edge noktasına yönlendirilir.
  • Cache (Önbellek): HTML, CSS, JS, görseller gibi dosyaların CDN üzerinde geçici olarak saklanması. Amaç, her istek için origin sunucuya gitme ihtiyacını azaltmaktır.
  • Cache Kontrol Başlıkları: Cache-Control, Expires, ETag gibi HTTP başlıklarıyla tarayıcıya ve CDN’e “Bu dosyayı şu kadar süre önbellekte tut” diyebilirsiniz.
  • Full Page Cache vs. Sadece Statik İçerik: Bazı senaryolarda sadece görsel/CSS/JS dosyalarını CDN üzerinden verirken, bazı durumlarda tüm HTML sayfalarını da CDN tarafında önbelleğe alabilirsiniz. WordPress bloglarında bu işe yararken, e-ticaret sepeti/ödeme sayfalarında dikkatli olmak gerekir.

CDN genellikle DNS seviyesinde (nameserver değişimi) ya da belirli alt alan adları üzerinden (örneğin cdn.ornekalanadi.com) devreye alınır. Trafik CDN’e uğradıktan sonra, HTTP/2 ve HTTP/3 gibi modern protokollerle çoklu istekler daha verimli yönetilir. Bu konuda detaylı bilgi istersen, HTTP/2 ve HTTP/3 desteğinin ne olduğu ve nasıl etkinleştirileceğini anlattığım rehbere mutlaka göz atmanı öneririm.

CDN Kullanmadan Önce Yapılması Gereken Hazırlıklar

CDN kurulumuna başlamadan önce birkaç altyapı kararını netleştirmek, ileride yaşayacağınız karmaşayı ciddi anlamda azaltır. Ben yeni bir projede CDN’e geçmeden önce genelde şu adımları checklist şeklinde üzerinden geçiyorum:

  • Sağlam ve istikrarlı bir hosting: CDN, kötü ve yavaş bir origin sunucuyu tamamen sihirli şekilde düzeltemez. Önce hosting tarafını düzgün seçmek gerekiyor. Örneğin, DCHost üzerinde iyi optimize edilmiş bir VPS veya Bulut Sunucu, CDN için güçlü bir temel sağlar.
  • Doğru veri merkezi lokasyonu: Hedef kitlenizin yoğun olduğu bölgeye göre veri merkezi seçmek hâlâ önemli. CDN global dağıtım sunsa da origin ile CDN arasındaki mesafe de gecikmeye etki eder. Bunun için veri merkezi lokasyonu seçimi rehberini inceleyebilirsin.
  • SSL / HTTPS zorunluluğu: CDN’lerin büyük kısmı artık HTTPS trafiği ile çalışıyor. Sitenizin zaten HTTPS üzerinde, tercihen HSTS ile sorunsuz çalışıyor olması gerekiyor. Henüz değilse, Let’s Encrypt ile ücretsiz SSL kurulum rehberindeki adımları uygulayabilirsin.
  • DNS kayıtlarının temizlenmesi: Karışık, kullanılmayan veya yanlış yönlendirilmiş DNS kayıtları, CDN geçişinde sorun çıkarabilir. DNS kayıtlarını yönetme rehberi ile kayıtlarını sadeleştirmen faydalı olacaktır.

Bu hazırlıkları tamamladıktan sonra, CDN’i hem WordPress hem de e-ticaret projelerinde çok daha güvenli ve öngörülebilir şekilde devreye alabilirsiniz.

WordPress Siteleri İçin Adım Adım CDN Kurulumu

Şimdi gelelim işin pratik kısmına. Burada marka bağımsız, genel geçer bir kurulum akışı anlatacağım. Çoğu popüler CDN paneli benzer mantıkla çalıştığı için, adımlar ufak isim değişikleriyle birebir uyacaktır.

1. Mevcut Durumu Analiz Et ve Yedek Al

Her performans çalışmasına başlamadan önce yaptığım ilk iş, sitenin mevcut halini test etmek. Bunun için Lighthouse, PageSpeed Insights, GTmetrix gibi araçlarla TTFB, LCP, CLS gibi metrikleri not alıyorum. Ardından sitenin tam yedeğini, mümkünse hem dosya hem veritabanı şeklinde alıyorum. DCHost üzerinde snapshot ya da harici yedekleme kullanıyorsan, CDN öncesi bir geri dönme noktası yaratmak çok işini görecektir.

2. CDN Hesabı Oluşturma ve Alan Adını Ekleme

Seçtiğin CDN sağlayıcısında bir hesap açtıktan sonra, genelde ilk adım sitenin alan adını tanımlamak olur. Panel genelde “:origin server” IP adresini ya da domain’ini sorar. Buraya DCHost üzerindeki sunucunun IP adresini veya mevcut A kaydının işaret ettiği hostname’i girebilirsin. CDN, DNS kayıtlarını otomatik tarayıp sana bir ön liste de sunabilir.

3. DNS Entegrasyonu: Nameserver Değişimi veya CNAME Yöntemi

CDN’i devreye almanın iki temel yolu vardır:

  • Nameserver değişimi: Alan adının nameserver kayıtlarını CDN’in verdiği nameserver’lar ile değiştirirsin. DNS yönetimi tamamen CDN paneline taşınır. Tüm alt alan adlarını tek panelden yönetmek istiyorsan bu mantıklı.
  • Alt alan adı (CNAME) ile entegrasyon: Sadece statik içerikleri CDN üzerinden vermek için, örneğin cdn.siteadiniz.com şeklinde bir alt alan adı tanımlar ve CDN’in verdiği hostname’e CNAME ile yönlendirirsin. WordPress üzerinde statik dosya URL’lerini bu alt alan adına çevirirsin.

Alan adı / DNS tarafını daha önce detaylıca anlattığım DNS yönetimi rehberine göz atarak, bu adımı çok daha rahat tamamlayabilirsin.

4. WordPress İçin CDN Eklentisi veya Manuel Kurulum

WordPress’in en büyük avantajı, CDN entegrasyonu için onlarca eklenti seçeneği sunması. Genel senaryo şöyle:

  • Halihazırda bir önbellek eklentisi (cache plugin) kullanıyorsan, muhtemelen içinde CDN sekmesi vardır. Burada CDN alt alan adını (örneğin cdn.siteadiniz.com) girebilirsin.
  • Önbellek eklentisi kullanmıyorsan, yalnızca statik dosya URL’lerini yeniden yazan hafif CDN eklentileri de mevcut. Kurup alt alan adını tanımlaman yeterli olur.
  • Manuel olarak da functions.php içinde content_url, plugins_url, site_url gibi fonksiyonların çıktısını filtreleyip, statik içerikleri CDN alt alanına yönlendirebilirsin. Ancak bu yöntem deneyimsiz kullanıcılar için riskli olabilir.

CDN panelinden, /wp-admin ve giriş sayfaları gibi dinamik yolların önbelleğe alınmadığından emin ol. Aksi halde yönetim panelinde garip oturum sorunları yaşayabilirsin.

5. Önbellek Kuralları, HTML Cache ve Temizleme (Purge)

WordPress blog yapısında, özellikle giriş yapılmamış ziyaretçiler için, kategori, etiket, yazı ve sayfa gibi bölümleri CDN’de HTML seviyesinde önbelleğe almak oldukça işe yarayabilir. Ancak:

  • Yazar oturumu açmış kullanıcıların cache’ten kaçırılması,
  • Yorum gönderildikten sonra ilgili yazı sayfasının önbelleğinin temizlenmesi,
  • Yeni yazı yayımlandığında anasayfa, kategori ve arşiv sayfalarının purge edilmesi

gibi kuralları mutlaka tanımlamak gerekiyor. Çoğu CDN bu işleri otomatik yapan WordPress eklentileri sunuyor. Eklenti kullanmasan dahi, Webhook veya API üzerinden yayın/purge entegrasyonu kurmak teknik olarak mümkün.

E-Ticaret Siteleri İçin CDN Kurarken Dikkat Edilmesi Gerekenler

WordPress bloglarına göre e-ticaret sitelerinde CDN kullanımı biraz daha hassas. Çünkü dinamik ve kullanıcıya özel verilerin olduğu pek çok alan var: sepet, ödeme, kullanıcı hesabı, sipariş geçmişi, kampanya kodları vb. Yanlış yapılandırılmış bir CDN, bu alanlarda hem güvenlik hem de kullanıcı deneyimi açısından ciddi sorunlara yol açabilir.

Önce şu prensibi netleştirerek başlayalım: Sepet, ödeme ve hesap sayfaları kesinlikle HTML seviyesinde cache edilmemelidir. Bu sayfalarda kullanıcıya özel içerik olduğu için, response’lar genellikle Cookie’lere göre değişir. CDN tarafında bu sayfalar için şu adımları uygulamanı öneririm:

  • /cart, /checkout, /my-account gibi yol desenlerini “cache bypass” listesine ekle.
  • Ödeme sağlayıcılarının callback URL’lerini (ödeme dönüş adresleri) CDN üzerinden değil, doğrudan origin sunucu üzerinden çalışacak şekilde tanımla.
  • Sepet ve kullanıcı oturum cookie’lerini, cache anahtarından (cache key) hariç tutma/yönetme ayarlarını incele.

Öte yandan, e-ticaret sitelerinde yoğun kullanılan ürün görselleri, CSS ve JS dosyaları CDN’de tutulduğunda müthiş performans kazanımı sağlıyor. Özellikle kampanya dönemlerinde anlık trafik patlamalarında, statik içerik yükünü CDN’e devrederek sunucunun çökmesini engellemek mümkün. E-ticaret projelerinde altyapı tarafında dikkat edilmesi gereken konuları daha geniş çerçevede ele aldığım e-ticaret siteleri için hosting gereksinimleri rehberinde SSL, PCI-DSS ve performans tarafını da detaylarıyla bulabilirsin.

WooCommerce ve Benzeri Platformlarda Özel Ayarlar

WooCommerce tarafında tipik olarak şu pratikleri uyguluyorum:

  • WordPress cache eklentisinde “e-commerce uyumluluğu” veya “cart/checkout sayfalarını hariç tut” seçeneklerini aktif ederim.
  • CDN tarafında ürün görsel klasörlerini (örneğin /wp-content/uploads) agresif cache ile, tema ve eklenti dosyalarını (CSS/JS) orta seviye cache ile saklarım.
  • Ürün stok, fiyat veya kampanya gibi dinamik alanlarda sık değişiklik varsa, ilgili HTML sayfaları için cache süresini daha kısa tutarım.

Bu yapı sayesinde, hem Core Web Vitals metrikleri yukarı çekiliyor, hem de backend tarafında PHP ve veritabanı yükü anlamlı şekilde azalıyor.

CDN Kullanırken Sık Yapılan Hatalar ve Performans Ölçümü

CDN kurulumlarında sahada en sık gördüğüm hataları ve bunları nasıl önleyebileceğini de kısaca listelemek istiyorum:

  • DNS döngüsü (loop) oluşturmak: Yanlış A/CNAME kayıtlarıyla CDN’in tekrar origin’e, origin’in tekrar CDN’e işaret etmesi gibi saçma sapan döngüler oluşabiliyor. DNS kayıtlarını mutlaka iki kez kontrol et.
  • Admin ve giriş sayfalarını cache etmek: /wp-admin, /wp-login.php ve benzeri yolları cache’ten mutlaka hariç tut.
  • Sürüm parametrelerini kaldırmak: Bazı kullanıcılar CSS/JS dosyalarındaki ?ver= parametrelerini tamamen kaldırıyor. Bu, yeni sürümlerin CDN üzerinde güncellenmesini zorlaştırabiliyor. Bunun yerine sürüm parametresini kontrollü kullanmak daha sağlıklı.
  • Güncelleme sonrası purge yapmamak: Tema veya eklenti güncelledikten sonra, ilgili dizinler için CDN önbelleğini temizlemezsen, ziyaretçilere eski CSS/JS servis etmeye devam edebilirsin.

Kurulumu bitirdikten sonra, CDN’in gerçekten işe yarayıp yaramadığını görmek için mutlaka öncesi-sonrası testleri yap. Bunun için:

  • CDN kapalıyken ve açıkkken PageSpeed / Lighthouse skorlarını karşılaştır.
  • Farklı ülkelerden test yapan araçlarla (örneğin Avrupa, ABD, Asya) TTFB ve toplam yüklenme sürelerini izle.
  • Tarayıcı geliştirici araçlarında (Network sekmesi) response header’larında HIT/MISS durumlarını kontrol et.

Unutma, CDN tek başına mucize değil. Sunucu tarafında PHP, MySQL ve dosya sistemi optimizasyonları da büyük önem taşıyor. Bu konularda daha derine inmek istersen, WordPress için VPS optimizasyonu rehberine ve LiteSpeed, Nginx ve Apache karşılaştırması içeriğine göz atmanı tavsiye ederim.

Sonuç: CDN, WordPress ve E-Ticaret İçin Nasıl Bir Yol Haritası Çizmeli?

CDN’i, WordPress ve e-ticaret projeleri için bir lüks değil, “doğru zamanda devreye alınması gereken temel bileşenlerden biri” olarak görüyorum. Özellikle kullanıcı kitlen coğrafi olarak dağılıyorsa, mobil trafik oranı yüksekse ve sitende çok sayıda görsel/JS/CSS dosyası varsa, CDN kullanmamak artık gerçekçi bir seçenek değil. İyi seçilmiş bir veri merkezi + optimize bir sunucu (örneğin DCHost üzerinde yapılandırılmış bir VPS) + doğru yapılandırılmış CDN üçlüsü, performans tarafında seni uzun süre rahatlatacaktır.

Benim tavsiyem, önce sitenin mevcut durumunu iyi analiz etmek; ardından basit bir CDN konfigürasyonu ile sadece statik içerikleri CDN üzerinden servis etmeye başlamak. Sonrasında adım adım HTML cache, gelişmiş kural setleri ve otomatik purge mekanizmaları gibi daha ileri seviyelere geçebilirsin. Özellikle e-ticaret tarafında, sepet ve ödeme gibi kritik sayfaları asla cache etmeden, ürün görselleri ve statik varlıklar üzerinden ilerlemen çok daha güvenli bir yaklaşım olacaktır.

Eğer elinde halihazırda bir WordPress veya WooCommerce projesi varsa, bu yazıyı küçük bir uygulama planına dönüştürüp, önce test ortamında CDN yapılandırmasını denemeni öneririm. Sonrasında canlıya geçerken, trafiği kademeli olarak CDN üzerinden yönlendirebilirsin. Soruların olursa, blogdaki diğer içeriklerle birlikte bu yazıyı bir referans doküman gibi kullanabilir, özellikle hosting altyapısı tarafında DCHost çözümlerini değerlendirerek daha kararlı ve ölçeklenebilir bir mimari kurabilirsin.

Yeni Paylaşılanlar
Clear Filters

Core Web Vitals are no longer a nice-to-have metric that only performance geeks care about. They directly affect how users…

Core Web Vitals ve WordPress Hosting İlişkisi WordPress sitenizde Core Web Vitals skorları (LCP, CLS ve INP) kırmızıya düştüğünde ilk…

Yorum Yapın

Bağlantılı Makaleler