“`html
Plesk’te Cron Job Nasıl Oluşturulur? Scheduled Tasks Rehberi
Plesk’te Cron Job oluşturmak, sunucuda belirli işlemleri otomatik olarak çalıştırmanın en pratik yollarından biridir. Düzenli yedekleme işlemleri, Laravel komutları, PHP scriptleri, API kontrolleri ve çeşitli sistem görevleri belirlediğimiz zaman aralıklarında otomatik şekilde çalıştırılabilir.
Plesk bu işlemleri Scheduled Tasks adı altında yönetmemize izin verir. Bu rehberde Plesk üzerinde Cron Job oluşturmayı, zamanlama seçeneklerini, PHP ve komut tabanlı görevleri ve güvenlik açısından dikkat edilmesi gereken noktaları adım adım anlatıyoruz.
Plesk Cron Job Nedir?
Cron Job, belirli bir komutun veya scriptin belirlediğimiz zaman aralıklarında otomatik olarak çalıştırılmasıdır.
Plesk üzerinde bu özellik Scheduled Tasks olarak adlandırılır. Örneğin aşağıdaki işlemleri otomatikleştirebiliriz:
- Belirli bir PHP scriptini çalıştırmak
- Laravel Scheduler çalıştırmak
- Veritabanı işlemlerini otomatikleştirmek
- Dosya temizliği yapmak
- API veya servis kontrolü gerçekleştirmek
- Özel bakım scriptleri çalıştırmak
Plesk’in resmi dokümantasyonunda Scheduled Tasks özelliği üzerinden komut ve scriptlerin zamanlanabildiği belirtilmektedir.
Plesk Scheduled Tasks resmi dokümantasyonunu inceleyebilirsiniz.
Plesk’te Scheduled Tasks Nerede Bulunur?
Plesk panelinde Scheduled Tasks bölümüne erişmek için kullandığınız hesap türüne göre menü değişebilir.
Genellikle ilgili alan adının veya aboneliğin yönetim ekranında Scheduled Tasks seçeneğini bulabiliriz.
Sunucu yöneticisi seviyesinde ise Scheduled Tasks bölümü Tools & Settings altında da yönetilebilir.
1. Plesk’te Yeni Cron Job Oluşturma
İlk olarak Plesk panelimize giriş yapıyoruz.
- İlgili aboneliği veya alan adını açıyoruz.
- Scheduled Tasks bölümüne giriyoruz.
- Add Task veya yeni görev oluşturma seçeneğini açıyoruz.
Burada çalıştıracağımız görevin türünü ve zamanlama ayarlarını belirleyebiliriz.
2. Plesk Cron Job Görev Türleri
Plesk üzerinde kullanacağımız görevin türüne göre farklı çalışma seçenekleri bulunabilir.
Run a Command
Sunucuda belirli bir komutu çalıştırmak için kullanılır.
Örneğin:
php /var/www/vhosts/example.com/httpdocs/test.php
Run a PHP Script
Doğrudan bir PHP scripti çalıştırmak için kullanılabilir.
Örneğin:
/var/www/vhosts/example.com/httpdocs/cron.php
Fetch a URL
Belirli bir URL’nin zamanlanmış şekilde çağrılmasını sağlamak için kullanılabilir.
Örneğin:
https://example.com/cron/run
Bu yöntem bir web tabanlı endpoint’in belirli aralıklarla tetiklenmesi gereken durumlarda kullanılabilir.
3. Cron Job Çalışma Zamanını Belirleme
Scheduled Task oluştururken görevin ne zaman çalışacağını belirlememiz gerekir.
Örneğin aşağıdaki zamanlamalar kullanılabilir:
- Her 5 dakikada bir
- Her 15 dakikada bir
- Her saat
- Her gün
- Haftanın belirli günleri
- Ayın belirli günleri
Örneğin her 30 dakikada çalışan bir görev için Plesk arayüzündeki zamanlama seçeneklerinden uygun aralığı seçebiliriz.
4. Her 5 Dakikada Bir Cron Job Çalıştırma
Görevin her 5 dakikada bir çalışmasını istiyorsak zamanlama ekranından dakikalık aralığı 5 olarak belirleyebiliriz.
Standart Linux cron formatında bunun karşılığı:
*/5 * * * *
Bu ifade görevin her beş dakikada bir çalıştırılması anlamına gelir.
5. Her Saat Çalışan Cron Job
Her saat başında çalışacak bir görev için cron formatı şu şekilde olabilir:
0 * * * *
Bu yapı özellikle saatlik veri kontrolü veya bakım scriptlerinde kullanılabilir.
6. Her Gün Belirli Saatte Çalışan Cron Job
Örneğin görevimizin her gün saat 03:00’te çalışmasını istiyorsak:
0 3 * * *
şeklinde bir cron zamanlaması kullanılabilir.
Gece saatlerinde çalışan bakım, temizleme veya veri işleme işlemleri için bu yapı oldukça kullanışlıdır.
7. Plesk’te PHP Cron Job Çalıştırma
PHP tabanlı bir scripti otomatik çalıştırmak için PHP yorumlayıcısını kullanabiliriz.
Örneğin:
/usr/bin/php /var/www/vhosts/example.com/httpdocs/cron.php
Ancak PHP binary yolu sunucudaki PHP yapılandırmasına göre değişebilir. Plesk üzerinde birden fazla PHP sürümü kullanılıyorsa doğru PHP binary yolunu belirlemek önemlidir.
Örneğin farklı bir PHP sürümü için sistemde bulunan uygun PHP binary kullanılabilir.
8. Laravel Scheduler İçin Plesk Cron Job
Laravel projelerinde zamanlanmış görevler için Laravel Scheduler kullanılabilir.
Plesk üzerinde Laravel Scheduler çalıştırmak için temel olarak Laravel’in schedule:run komutunu zamanlamak mümkündür.
Örneğin:
php /var/www/vhosts/example.com/httpdocs/artisan schedule:run
ve bunu cron tarafında dakikalık olarak çalıştırabiliriz.
Örnek cron ifadesi:
* * * * *
Bu yapı Laravel’in scheduler mekanizmasının her dakika kontrol edilmesini sağlar.
Laravel uygulamanız için Plesk üzerinde daha gelişmiş yönetim kullanıyorsanız Plesk Laravel Toolkit dokümantasyonunu da inceleyebilirsiniz.
9. Plesk’te URL Tabanlı Cron Job
Bazı uygulamalarda doğrudan PHP dosyası çalıştırmak yerine belirli bir URL’nin çağrılması gerekebilir.
Örneğin:
https://example.com/cron/process
Bu adres belirli bir API veya backend işlemini tetikliyorsa Scheduled Tasks üzerinden URL çağrısı planlanabilir.
Ancak güvenlik nedeniyle herkese açık ve kimlik doğrulaması olmayan cron endpointleri oluşturmanızı önermiyoruz.
10. Cron Job Çalışıyor mu Nasıl Kontrol Edilir?
Bir Scheduled Task oluşturduktan sonra görevin gerçekten çalışıp çalışmadığını kontrol etmek önemlidir.
Kontrol için aşağıdaki yöntemlerden yararlanabiliriz:
- Uygulama loglarını kontrol etmek
- Sunucu loglarını incelemek
- Scriptin oluşturduğu çıktıları kontrol etmek
- Geçici log dosyası oluşturmak
Örneğin test amacıyla PHP scriptimize:
file_put_contents(
'/var/www/vhosts/example.com/httpdocs/cron-test.log',
date('Y-m-d H:i:s') . PHP_EOL,
FILE_APPEND
);
ekleyerek cron çalıştıkça log dosyasına tarih bilgisi yazılmasını sağlayabiliriz.
11. Cron Job Çalışmıyorsa Ne Kontrol Edilmeli?
Plesk’te oluşturduğumuz görev çalışmıyorsa birkaç temel noktayı kontrol etmeliyiz.
Dosya yolu
Scriptin tam yolunun doğru olduğundan emin olun.
/var/www/vhosts/example.com/httpdocs/cron.php
PHP sürümü
Scriptin ihtiyaç duyduğu PHP sürümünün kullanıldığını kontrol edin.
Dosya izinleri
Cron tarafından çalıştırılan dosyanın gerekli izinlere sahip olması gerekir.
Environment variable
Web üzerinden çalışan uygulama ile CLI üzerinden çalışan uygulamanın ortam değişkenleri aynı olmayabilir.
Çalışma kullanıcısı
Cron görevinin hangi kullanıcı hesabıyla çalıştığı da önemlidir. Dosya, klasör ve uygulama izinleri bu kullanıcıyla uyumlu olmalıdır.
12. Plesk Cron Job ve Güvenlik
Cron Job yalnızca otomasyon için değil, güvenlik açısından da dikkat edilmesi gereken bir mekanizmadır.
Özellikle Run a Command görevlerinde hangi kullanıcının hangi dosyalara erişebildiği önemlidir.
Plesk dokümantasyonunda Linux üzerindeki Scheduled Tasks için kullanılan shell ayarlarının erişim kapsamını etkilediği ve özellikle paylaşımlı sunucularda güvenli shell kullanımının önemli olduğu belirtilmektedir.
Bu nedenle paylaşımlı hosting ortamlarında gereksiz yetkiler verilmemelidir.
Plesk Scheduled Tasks shell güvenliği hakkındaki resmi dokümantasyonu inceleyebilirsiniz.
13. Root Kullanıcısı ile Cron Job
Sunucu yöneticileri için root seviyesinde çalışan Scheduled Tasks oluşturmak da mümkündür.
Ancak root yetkisiyle çalıştırılan bir komutun sunucunun tamamına erişim hakkı olabileceği unutulmamalıdır.
Bu nedenle root seviyesinde yalnızca gerçekten gerekli olan görevleri çalıştırmak ve komutları dikkatli şekilde kontrol etmek gerekir.
14. WordPress için Plesk Cron Job Kullanımı
WordPress sitelerinde WP-Cron yerine gerçek bir sistem zamanlayıcısı kullanmak performans açısından bazı durumlarda avantaj sağlayabilir.
Özellikle yüksek trafikli sitelerde WordPress’in sanal cron mekanizmasının trafikle tetiklenmesi yerine düzenli bir scheduled task kullanılabilir.
Plesk WP Toolkit, wp-cron.php görevini devralarak yerine zamanlanmış bir görev oluşturma seçeneği de sunmaktadır.
Bu konu hakkında Plesk WP Toolkit resmi dokümantasyonuna göz atabilirsiniz.
15. Cron Job İçin En İyi Uygulamalar
Production sunucularda Scheduled Tasks oluştururken aşağıdaki prensiplere dikkat etmenizi öneriyoruz:
- Gereksiz sıklıkta cron çalıştırmayın.
- Scriptlerin tam dosya yollarını kullanın.
- Hassas bilgileri cron komutunun içerisine açık şekilde yazmayın.
- Gereksiz root yetkisi kullanmayın.
- Uzun süren işlemleri takip edin.
- Loglama mekanizması oluşturun.
- Hata durumlarını kontrol edin.
Plesk ile Cron Job Kullanmanın Avantajları
Plesk’in Scheduled Tasks özelliği özellikle sunucu yönetimine yeni başlayan kullanıcılar için önemli bir kolaylık sağlar.
Komut satırında manuel olarak crontab düzenlemek yerine görevleri Plesk panelinden oluşturabilir ve yönetebiliriz.
Böylece:
- Otomatik script çalıştırabiliriz.
- Laravel Scheduler kullanabiliriz.
- WordPress cron işlemlerini düzenleyebiliriz.
- Periyodik bakım görevleri oluşturabiliriz.
- Özel uygulama işlemlerini zamanlayabiliriz.
Plesk Sunucusu İçin Uygun Lisans Seçimi
Plesk üzerinde web siteleri, PHP uygulamaları, Node.js projeleri ve zamanlanmış görevleri tek panel üzerinden yönetmek isteyen kullanıcılar için uygun bir lisans planı önemlidir.
Sunucunuzu ve hosting altyapınızı Plesk ile yönetmek için hesaplı Plesk lisansı seçeneklerimizi inceleyebilirsiniz.
VPS veya dedicated sunucu üzerinde birden fazla uygulama çalıştırıyorsanız, lisans seçiminin yanında CPU, RAM, disk ve ağ kaynaklarını da birlikte değerlendirmek gerekir.
Sonuç
Plesk’te Cron Job oluşturmak, tekrarlanan sunucu ve uygulama işlemlerini otomatikleştirmenin etkili yollarından biridir. Scheduled Tasks üzerinden PHP scriptleri, komutlar, URL’ler ve framework tabanlı görevler belirli zamanlarda çalıştırılabilir.
Özellikle Laravel, WordPress ve özel PHP uygulamalarında doğru yapılandırılmış bir cron sistemi manuel işlemleri azaltır ve uygulamanın düzenli çalışmasına yardımcı olur.
Ancak cron görevlerinde yalnızca zamanlama değil; dosya izinleri, çalışma kullanıcısı, PHP sürümü ve güvenlik ayarları da mutlaka dikkate alınmalıdır.
Sık Sorulan Sorular
Plesk’te Cron Job nasıl oluşturulur?
Plesk panelinde ilgili aboneliğin veya alan adının Scheduled Tasks bölümünden yeni bir görev oluşturularak cron işlemi yapılandırılabilir.
Plesk’te PHP Cron Job çalıştırılabilir mi?
Evet. PHP dosyaları uygun PHP binary ve dosya yolu belirtilerek Scheduled Tasks üzerinden otomatik şekilde çalıştırılabilir.
Plesk’te Laravel Scheduler nasıl çalıştırılır?
Laravel Scheduler için artisan schedule:run komutu zamanlanabilir. Genellikle scheduler kontrolünün her dakika çalıştırılması tercih edilir.
Plesk Cron Job neden çalışmıyor?
Yanlış dosya yolu, PHP sürümü, dosya izinleri, kullanıcı yetkileri veya environment variable eksiklikleri cron görevinin çalışmamasına neden olabilir.
Plesk Cron Job güvenli midir?
Doğru kullanıcı, izin ve shell yapılandırmasıyla güvenli şekilde kullanılabilir. Özellikle root yetkisi ve Run a Command görevlerinde gereksiz erişim verilmemelidir.
“`



Yorum yapmak için lütfen müşteri hesabınız üzerinden giriş yapın. Misafirler henüz yorum gönderemez.
Yorum yapmak için giriş yapın Müşteri hesabı oluşturun