Flarum forumları genellikle Cloudflare arkasında çalışır. Cloudflare; CDN, önbellek, güvenlik ve performans ayarlarıyla forumun hem daha hızlı hem de daha dayanıklı olmasına yardımcı olur. Ancak bu ayarları yönetmek için sürekli Cloudflare paneline geçmek, özellikle güncelleme sonrası önbellek temizlemek gerektiğinde pratik değil.
Flarum Cloudflare, Cloudflare API’sini Flarum yönetim paneline taşıyan bir eklenti. Zone ayarlarını görüntüleyip değiştirebiliyor, önbelleği temizleyebiliyor ve sık kullanılan Cloudflare özelliklerini tek ekrandan yönetebiliyorsunuz.
Neden Flarum panelinden Cloudflare yönetimi?
Bir Flarum güncellemesinden sonra statik dosyaların önbellekte kalması, admin panelinin eski JavaScript dosyasını yüklemesi veya tema değişikliğinin kullanıcılara yansımaması sık karşılaşılan sorunlar. Cloudflare panelinde doğru zone’u bulup doğru işlemi seçmek zaman alıyor. Bu eklenti, forum yönetimini tek yerde toplamayı hedefliyor.

Öne çıkan özellikler
- Cloudflare entegrasyonunu açma/kapatma.
- API token, account ID, zone ID ve zone adı yapılandırması.
- API bağlantısını test etme.
- Önbelleği manuel temizleme; toplu dosya temizleme istekleri Cloudflare’in 30 dosyalık sınırına uygun şekilde gruplanıyor.
- Yeni konu veya gönderi oluşturulduğunda otomatik önbellek temizleme (varsayılan olarak kapalı).
- Development Mode, Bot Fight Mode, Always Online, Brotli, Rocket Loader ve Mirage açma/kapatma.
- JavaScript, CSS ve HTML küçültme (minify) ayarları.
- Güvenlik seviyesi, Polish görsel optimizasyonu ve tarayıcı önbellek süresi ayarları.
- Kaydedilen tüm ayarları tek tıkla Cloudflare’e uygulama; her ayar bağımsız uygulanıyor ve hatalar ayrı ayrı raporlanıyor.
- Ayrıntılı Cloudflare API hata mesajları.
- İngilizce ve Türkçe dil desteği.
API token izinleri
Cloudflare panelinde bir API token oluştururken en az şu izinleri vermeniz gerekiyor:
- Zone:Cache Purge — önbellek temizleme.
- Zone:Read — zone bilgilerini okuma.
- Zone:Edit — zone ayarlarını değiştirme.
Güvenlik açısından yalnızca ihtiyaç duyulan zone’a erişim veren, mümkünse ayrı bir token kullanmanızı öneririm. Tüm hesaplara erişen geniş yetkili bir token kullanmak gereksiz risk oluşturur.
Kurulum ve yapılandırma
Eklenti Flarum 2.0 ve PHP 8.3 ile uyumlu. Cloudflare API istekleri için Guzzle HTTP istemcisi kullanılıyor.
composer require cengizkemec/cloudflare
php flarum cache:clear
Ardından eklentiyi etkinleştirin ve Yönetim → Eklentiler → Cloudflare → Ayarlar bölümüne gidin. API Token, Account ID, Zone ID ve zone adını girdikten sonra bağlantıyı test edebilirsiniz. Ayarları kaydettikten sonra Apply Settings to Cloudflare butonuyla Cloudflare’e gönderebilir, Purge Cache ile önbelleği hemen temizleyebilirsiniz.
Otomatik önbellek temizleme uyarısı
Otomatik temizleme varsayılan olarak kapalı ve bunun iyi bir nedeni var. Etkinleştirildiğinde her yeni konu ve gönderi Cloudflare’e “purge everything” isteği gönderiyor. Aktif bir forumda bu, önbelleğin neredeyse tamamen devre dışı kalması ve gönderi işlemlerinin yavaşlaması anlamına geliyor. Bu yüzden yönetim panelinde sıkı bir uyarı ve onay penceresi var. Manuel Purge Cache butonu çoğu senaryo için daha doğru bir tercih.
Sorun giderme
Flarum, tüm eklentilerin admin JavaScript dosyalarını tek bir admin.js içinde birleştiriyor. CDN veya tarayıcı tarafında yarım kalan bir dosya aktarımı, yönetim panelinin tamamının açılmamasına neden olabilir. Eklenti bu tür sorunlara karşı kendi js/dist/*.js dosyalarını her build’de doğruluyor; yine de bir sorun yaşarsanız şu adımları deneyin:
- Sayfayı sert yenileme ile açın (Ctrl+Shift+R / Cmd+Shift+R).
- Tarayıcı önbelleğini temizleyin.
- Cloudflare veya başka bir CDN kullanıyorsanız
/assets/admin.jsve/assets/admin-*.jsdosyalarının önbelleğini temizleyin. - Sunucuda
php flarum cache:clearkomutunu çalıştırın.
API hataları arayüzde ayrıntılı şekilde gösteriliyor. Bir ayar uygulanamazsa diğerleri uygulanmaya devam ediyor; hangi ayarın başarısız olduğu tek tek raporlanıyor.
Güvenlik notları
Tüm uç noktalar yönetici yetkisi gerektiriyor. API token’ı ve zone bilgileri yalnızca yönetim panelinde tutuluyor; forumun genel yüküne dahil edilmiyor. Yine de token’ı en az yetki prensibiyle oluşturmak, kullanılmayan özellikleri kapatmak ve erişim bilgilerini paylaşmamak önemli.
Cloudflare entegrasyonu forumun çalışması için zorunlu değil. Eklenti kapalıyken veya API bilgileri girilmemişken Flarum normal şekilde çalışmaya devam eder.
Sonuç
Flarum Cloudflare, özellikle birden fazla forum veya site yönetenler için pratik bir kontrol paneli. Önbellek temizleme, zone ayarları ve performans seçeneklerini Flarum’dan ayırmadan yönetmeyi sağlıyor.
- GitHub: github.com/cengizkemec/flarum-cloudflare
- Packagist: packagist.org/packages/cengizkemec/cloudflare
- Kullanım kılavuzu: docs/GUIDE.md
