Hosting firmanızdan sürekli “CPU limitini aştınız” uyarısı mı alıyorsunuz? Veya sitenizde trafik yokken bile sunucu kaynaklarınızın %100 kullanıldığını mı görüyorsunuz? Bu gizemli kaynağın sebebi genellikle WordPress’in kendi iç zamanlayıcısı olan WP-Cron sistemidir. Doğru yapılandırılmamış WordPress Cron Job ayarları sitenizi yavaşlatmakla kalmaz, sunucu erişiminizi kısıtlayabilir.
Bu rehberde, WordPress’in sanal zamanlayıcısını (WP-Cron) neden devre dışı bırakmanız gerektiğini ve sunucu üzerinden “Gerçek Cron Job” kurarak işlemci performansını nasıl %50 oranında rahatlatacağınızı anlatacağız.
WP-Cron Nedir? Nasıl Çalışır?
Cron Job, Linux sistemlerde belirli bir görevi (yedek alma, e-posta gönderme, güncelleme kontrolü) belirli bir zamanda yapmaya yarayan komuttur. Ancak WordPress her sunucuda çalışabilmek için “Sanal” bir cron sistemi geliştirmiştir: wp-cron.php.
WP-Cron’un çalışma mantığı şöyledir: Sitenize bir ziyaretçi her girdiğinde, WordPress arka planda “Yapılacak zamanlanmış görev var mı?” diye kontrol eder.
- Düşük Trafikte Sorun: Eğer sitenize kimse girmezse, zamanlanmış yazılarınız yayınlanmaz veya yedekleriniz alınmaz.
- Yüksek Trafikte Sorun (Daha Kötü): Eğer sitenize aynı anda 100 kişi girerse, sunucu 100 kez “görev var mı?” kontrolü yapar. Bu, kendi kendinize DDoS saldırısı yapmak gibidir ve sunucuyu kilitler.
Adım 1: WP-Cron Nasıl Devre Dışı Bırakılır?
Performansı artırmak için öncelikle WordPress’in ziyaretçiye dayalı bu sistemini kapatmalıyız. Bu işlem sitenizi bozmaz, sadece kontrolü sunucuya (Hosting paneline) devreder.
- Hosting panelinizden Dosya Yöneticisi’ne (File Manager) girin.
- Ana dizindeki (public_html) wp-config.php dosyasını bulun ve düzenle (edit) diyerek açın.
- “That’s all, stop editing” satırından hemen önce şu kodu yapıştırın:
define( 'DISABLE_WP_CRON', true );
Artık sitenize giren ziyaretçiler arka planda bir tetikleme yapmayacak. Ancak zamanlanmış görevlerin (yedekleme, planlı yazılar) çalışması için şimdi gerçek bir görev atamalıyız.
Adım 2: Gerçek Cron Job Kurulumu (cPanel & Plesk)
Şimdi görevi sunucunun kendisine vereceğiz. Böylece sitenizde ziyaretçi olsa da olmasa da, görevler tam vaktinde ve sunucuyu yormadan yapılacaktır.
Plesk Panel Kullanıcıları İçin
Eğer Plesk Panel kullanıyorsanız:
-
- Plesk paneline giriş yapın ve “Zamanlanmış Görevler” (Scheduled Tasks) menüsüne tıklayın.
- “Görev Ekle” butonuna basın.
- “Komut Çalıştır” seçeneğini seçin.
- Komut kutusuna şu satırı (kendi site adresinizle değiştirerek) yazın:
wget -q -O - https://siteniz.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
- Sıklık olarak “Saat başı” veya “30 dakikada bir” seçeneğini işaretleyin. (Dakikada bir yapmanıza gerek yoktur).
cPanel Kullanıcıları İçin
- cPanel’de “Cron İşleri” (Cron Jobs) menüsüne girin.
- “Ortak Ayarlar” kısmından “Saatte bir defa” (Once per hour) seçeneğini seçin.
- Komut kısmına yukarıdaki wget komutunu yapıştırın ve ekleyin.
Gerçek Cron Kullanmanın Avantajları
- Kararlılık: Web sitesi kurma sürecinde en önemli şey sürekliliktir. Yazılarınız tam dakikasında yayınlanır.
- Hız: Ziyaretçiler arka planda bir script çalışmasını beklemediği için sayfa açılış hızı artar.
- Düşük CPU: İşlem sadece saatte bir kez yapıldığı için kaynak tüketimi minimuma iner.
Sonuç
WordPress Cron Job ayarları, küçük bir değişiklik gibi görünse de yüksek trafikli sitelerin ayakta kalmasını sağlayan en kritik optimizasyonlardan biridir. Eğer siteniz büyüyor ve teknik detaylarla uğraşmak istemiyorsanız, tüm bu optimizasyonların uzman ekiplerce yapıldığı Yönetilen WordPress Hosting hizmetlerimizi tercih edebilirsiniz.




