Makale

CPalius 2.2.44 ve 2.2.45 ayrıntılı notlar

· ZemoCA · 4 dk okuma
CPalius 2.2.44 ve 2.2.45 ayrıntılı notlar

2.2.44: Hız ve günlük işler

Panel neden yavaşlıyordu?

Bir modülü kapatmak 45–75 saniye sürüyordu. Sorunun tek bir kaynağı yoktu:

  • Dolu OPcache: PHP'nin derlenmiş kod önbelleği dolunca her istek tüm kodu yeniden derliyordu. Performans kartı artık önbellek dolduğunda uyarı veriyor.
  • Çalışma anında ikon çekmek: Sayfalar çizilirken api.iconify.design adresinden ikon indiriliyordu. Panelin kullandığı ikonlar artık pakette geliyor, dışarıdan hiçbir şey çekilmiyor. Eksik bir ikon sayfayı bozmuyor, boş çiziliyor.
  • Küçük görseller: Bir sayfa isteği yeni küçük görsel üretirken saniyelerce takılabiliyordu. Artık istek başına en fazla 300 ms harcanıyor, belleğe sığmayacak görseller atlanıyor, kalanı sonraki ziyarette tamamlanıyor. Küçük bir kaynak görsel de büyütülmüyor.
  • Modül aç/kapat: Apache mod_fcgid gibi yanıtı erken bırakamayan sunucularda güvenlik denetimi (Manifesto Law 2.2) arka planda çalışıyor, tıklama hemen dönüyor. Yeni container arka planda derlenip hazır olunca devreye giriyor. PHP-FPM kullanan sunucular eski davranışı koruyor.

Bu testleri Laragon üzerinde yaptık. Linux ve PHP-FPM üzerindeki canlı davranışı ayrıca doğrulamak gerekiyor.

Çerez onayı: kategoriler ve Google Consent Mode v2

Çerez çubuğu artık Zorunlu, Analitik ve Pazarlama kategorileri sunuyor. Ziyaretçi seçimini bir "Tercihler" panelinden yapıyor. Eski "Kabul et" ve "Yalnızca gerekli" düğmeleri çalışmaya devam ediyor, eski onay çerezleri geçerli kalıyor.

  • {{ cp_consent_mode() }} ile analitik, reklam depolama ve reklam kişiselleştirme denied olarak başlıyor ve ziyaretçinin kararına göre gtag('consent', 'update') ile güncelleniyor. Çağrı Default ve Githeme temalarının <head> bölümüne eklendi.
  • <script type="text/plain" data-cp-consent="analytics"> ile yazılan betikler, yalnızca kategori onaylanınca çalışıyor.
  • data-cp-consent-open taşıyan bir bağlantı ya da düğme tercihleri yeniden açıyor.
  • Metinleri AACP → Ayarlar → Çerez onayı ekranından dil dil düzenleyebilir, Consent Mode'u açıp kapatabilir, Analitik ya da Pazarlama kategorisini gizleyebilirsiniz. Varsayılan olarak kapalı.

404 kayıtları

  • Statik dosyalar (görsel, CSS, JS, yazı tipi), tarama yolları (wp-login.php, .env, phpmyadmin ...) ve arama motoru botları ya da boş kullanıcı aracısı artık sayılmıyor.
  • Her satırda hedef alanı ve 301 oluştur düğmesi var: yönlendirmeyi oluşturuyor, satır listeden çıkıyor. Eksik adresle aynı slug'a sahip yayınlanmış bir sayfa varsa hedef adres kendiliğinden doluyor.

Menü konumları

Bir menü bir konuma atanabiliyor: Ana başlık, Alt bilgi, ayrıca temanın theme.json içindeki menu_locations ile bildirdiği ya da bir modülün cpalius.menu_location etiketiyle kaydettiği konumlar. {{ cp_menu_location('main_header') }} atanan menüyü her öğenin rel, target, ikon ve CSS sınıfıyla yazdırıyor. {{ cp_menu_location_items('main_header') }} kendi işaretlemesini yazan temalar için öğe ağacını veriyor.

Yapay zekâ çeviri modülü

Çeviriler için hizmet seçilebiliyor: OpenRouter, Groq, Cerebras, Gemini ve Mistral (ücretsiz katman), DeepSeek, Qwen, ChatGPT, Claude ve Grok (ücretli) ya da kendi OpenAI uyumlu sunucunuz. Her hizmetin kendi API anahtarı ve modeli saklanıyor; biri seçilince diğerleri silinmiyor, anahtarlar sunucuda şifreli tutuluyor. Yapay zekâ yanıt vermezse ücretsiz çeviriyle devam ediliyor.

2.2.45: Güncelleme sistemi baştan güvenli

Güncelleme sistemi, siteyi yok edebilecek tek parça. Bu yüzden diğer sistemlerin yaklaşımlarıyla karşılaştırdık. Drupal ve Sulu için koda baktık, WordPress için bilgiye dayandık.

 Güncelleme nasıl yapılıyor?Dikkat çeken
Drupal 11.4Kod ve şema ayrı adımlar. Değişiklik bir kopyada yapılıp yaklaşık 20 denetimden geçiyor.İmza desteği var ama kodunun kendi notuna göre varsayılan olarak atlanıyor. Otomatik veritabanı yedeği yok.
Sulu 3Panel güncelleyicisi yok. composer update ve CI.Web süreci kod yazamıyor, saldırı yüzeyi en küçük. Ama Composer, CI ve SSH şart.
CPalius (önceden)Panelden tek tık.Paket SHA-256 ile doğrulanıyordu ama sürüm bilgisinin kendisi imzasızdı.

İmzalı sürüm bilgisi

latest.json Ed25519 ile imzalanıyor ve imza çekirdeğe gömülü genel anahtarla doğrulanıyor. Şunlar reddediliyor:

  • İmzası olmayan ya da geçersiz manifest.
  • Süresi dolmuş manifest (30 gün), bayat bilgiyi tekrar sunma saldırısına karşı.
  • Kurulu sürümden eski sürüm, geri düşürme saldırısına karşı.

Reddedilince Güncellemeler ekranı "Kriptografik İmza Doğrulanamadı / Güvenlik Engeli" diyor, güncelle düğmesi pasifleşiyor ve hiçbir şey indirilmiyor.

Bakım modu, kilit ve iki adımlı yazma

  • Site 503 bakım sayfasına alınıyor, iki güncelleme çakışmasın diye kilit tutuluyor.
  • Dosyalar önce her biri hedefinin yanına hazırlanıyor, sonra hepsi kısa bir döngüde rename ile yerine geçiyor. Hazırlık sırasında hata olursa canlı dosyalara dokunulmamış oluyor.

Hata olursa geri alma

Güncellemeden önce veritabanının anlık görüntüsü alınıyor. Dosya, migration ya da bir güncelleme adımı hata verirse dosyalar ve veritabanı birlikte geri yükleniyor, Güncellemeler ekranı bunu bildiriyor. Süreç ortada ölürse bir sonraki istek public/index.php içinde, framework yüklenmeden önce dosyaları kendisi geri alıyor; veritabanı geri yüklemesi ilk açılan istekte bitiyor.

Bilmeniz gerekenler

  • Geri alma, anlık görüntü ile hata arasında veritabanına yazılan her şeyi siler. Bakım modu bu aralığı daraltıyor ama kapatmıyor.
  • Güncelleme sürerken ziyaretçiler ve panel kısa bir 503 sayfası görüyor.
  • Büyük veritabanlarında anlık görüntü süre ve disk alanı harcıyor.
  • İmzanın 30 günlük süresi var. Yeni sürüm çıkmazsa imza elle tazeleniyor.
  • Bu mekanizmaların ilk gerçek sınavı sonraki güncellemeler. Bir sorunla karşılaşırsanız bu konuya yazın.

Güncelleme

AACP → Güncellemeler ekranından güncelleyebilirsiniz. Güncelledikten sonra cp-core/var/cache/prod/ içini boşaltın, Redis kullanıyorsanız onu da temizleyin.

Yorumlar (0)

Henüz yorum yok. İlk yorumu sen yaz.

Yorum yaz

Yorumunuz yayınlanmadan önce incelenecektir.

İlgili Yazılar

CPalius 2.2.46'dan 2.2.63'e: güncelleme Notları
Makale

CPalius 2.2.46'dan 2.2.63'e: güncelleme Notları

CPalius 2.2.44 ve 2.2.45'in ayrıntılı notlarını daha önce paylaşmıştık. O günden bu yana on sekiz sürüm çıktı. Bu yazı o sürümlerin ne getirdiğini, neden getird…