WordPress İçerikleriyle Güvenli ve Hızlı Statik Website Mimarisi
Bu çalışmanın çıkış noktası, güvenli ve yüksek performanslı bir website oluşturma ihtiyacıydı.
Zamanla bu hedef, yalnızca “daha hızlı” bir site yapmaktan öteye geçti ve mimarinin kendisini sorgulamayı gerektirdi. WordPress güçlü bir içerik üretim aracıydı, ancak içerik sunumunu da üstlendiğinde hem güvenlik hem de performans açısından gereksiz riskler barındırıyordu.
Bu nedenle WordPress’i yalnızca içerik üretimine odaklanan bir bileşen haline getirip, üretilen içerikleri tamamen statik bir websitesi üzerinden sunan bir yapı kurgulandı. Bu yaklaşım sayesinde, hem güvenlik hem de performans tarafında beklenenin ötesinde kazanımlar elde edildi.
Problem: Dinamik CMS, Public Sunum Riski
Klasik senaryoda WordPress:
- İçerik üretir
- İçeriği saklar
- İçeriği doğrudan son kullanıcıya sunar
Bu yapı özellikle kurumsal ortamlarda şu riskleri doğurur:
- Geniş saldırı yüzeyi (PHP, eklentiler, admin paneli)
- Trafik artışına bağlı performans sorunları
- İçerik yönetimi ile içerik sunumunun aynı sistemde olması
Bu projedeki temel hedef şuydu:
İçerik yönetimi ile içerik sunumunu kesin olarak ayırmak.
Çözüm: WordPress + Statik Site Ayrımı
Mimaride roller bilinçli olarak ayrıştırıldı.
WordPress’in Rolü
- Editoryal süreçleri yönetir
- İçerik üretir
- İçeriği ZIP dosyaları halinde dışa aktarır
- Read-only bir API ile yalnızca export listesini sunar
WordPress:
- İçerik sunmaz
- Trafik taşımaz
- State tutmaz
Statik Websitesinin Rolü
- Son kullanıcıya içerik sunar
- Tamamen HTML / CSS / JS dosyalarından oluşur
- PHP, veritabanı veya server-side runtime içermez
Bu sayede:
- Saldırı yüzeyi minimuma iner
- Performans trafik hacminden bağımsız hale gelir
İçerik Senkronizasyonu ve İç Network Güvenliği
WordPress’te üretilen içerikler, ayrı bir Content Sync Service tarafından yönetilir:
- Export listesi periyodik olarak kontrol edilir
- Yeni ZIP dosyaları tespit edilir
- Redis üzerinden lock alınarak çakışma önlenir
- ZIP dosyası iç network’te konumlanan sunucuya taşınır
- İçerik burada açılır ve statik site çıktısına dönüştürülür
Bu süreçte:
- WordPress iç network’e erişmez
- İç network public sistemlere açılmaz
- Veri akışı tek yönlüdür (pull-based)
Bu yaklaşım, kurumsal IT ve bilgi güvenliği ekiplerinin tercih ettiği izole ve denetlenebilir bir model sunar.
Hız (Performance)
Performans kazanımları doğrudan mimari kararlardan gelir:
- Binlerce dosya yerine tek ZIP transferi
- Statik dosyaların disk veya CDN üzerinden sunulması
- PHP ve veritabanı sorgularının tamamen ortadan kalkması
Sonuç olarak:
- İlk yükleme süreleri minimuma iner
- Trafik artsa bile performans değişmez
- Kullanıcı deneyimi tutarlı kalır
Güvenlik (Security)
Bu mimaride güvenlik şu prensiplere dayanır:
- Statik sitede çalıştırılabilir backend yoktur
- WordPress public sunumdan tamamen izole edilmiştir
- İçerik yönetimi iç network’te kalır
- State ve senkronizasyon merkezi ve kontrollüdür
Bu yapı, şu soruya net bir cevap verir:
WordPress ihlal edilse bile, statik site ve iç network etkilenmez.
Dinamik Arama, Statik Deneyim (Algolia ile)
Statik websitesindeki tek dinamik özellik arama fonksiyonudur ve bu ihtiyaç için Algolia kullanılmıştır.
- İçerikler WordPress’te üretilir ve statik hale getirilir
- Aynı içerikler Algolia index’ine aktarılır
- Statik site, JavaScript üzerinden Algolia Search API’sine bağlanır
Kullanıcı açısından:
- Anlık arama sonuçları
- Filtreleme
- Akıcı bir gezinme deneyimi
Teknik olarak ise:
- Backend yok
- State yok
- CMS ile doğrudan bağlantı yok
Kullanıcı, farkında olmadan tamamen statik bir site içinde dolaşır.
Sonuç
Bu mimari ile:
- WordPress sadeleştirildi
- İçerik sunumu statik hale getirildi
- Güvenlik ve performans birlikte sağlandı
- Kurumsal ortamlara uygun, ölçeklenebilir bir yapı kuruldu
Mimari dönüşümün ardından web sitesinin yüklenme performansı %45 oranında arttı.
Özetle:
WordPress içerik üretir, statik site sunar, kullanıcı WordPress’e hiç dokunmaz.