# إدارة مهام cron
Source: https://docs.webgee.com/ar/hosting/managing-cron-jobs-in-cpanel







جدول أمرًا ليعمل تلقائيًا. ينطبق على الاستضافة المشتركة والموزِّعة والمميّزة.

## أضف واحدة [#أضف-واحدة]

1. في cPanel، افتح **Cron Jobs** ضمن **Advanced**.

   <img alt="صفحة Cron Jobs وفيها إعداد Cron Email" src="__img0" />

2. استخدم **Common Settings** لاختيار فاصل جاهز، أو اضبط **Minute** و**Hour** و
   **Day** و**Month** و**Weekday** بنفسك.

   <img alt="نموذج إضافة مهمة cron وفيه حقول الفاصل وأمثلة أوامر PHP" src="__img1" />

3. أدخل الأمر.

4. اختر **Add New Cron Job**.

وأمر نموذجي:

```bash
cd /home/cpaneluser/public_html && /usr/local/bin/php -q script.php > /dev/null 2>&1
```

## اختر الفاصل بعناية [#اختر-الفاصل-بعناية]

<Callout type="warn">
  المهمة الثقيلة على فاصل قصير من أشيع طرق استنزاف موارد حسابك. فكل تشغيل يستهلك
  معالجة و[عملية دخول](/ar/performance/entry-processes-ep-what-is-an-entry-process)،
  وإن استغرقت مهمة أطول من فاصلها، تداخلت التشغيلات وتراكمت حتى يبلغ الحساب
  حدوده.

  والإفراط المستمر يخالف سياسة الاستخدام العادل كذلك.
</Callout>

وقواعد تقريبية:

* **كل 5 دقائق** أقصر فاصل معقول لمعظم الأعمال.
* **كل دقيقة** لما ينتهي في ثوانٍ بشكل موثوق فقط.
* **وقّت المهمة أولًا** — `time php script.php` — وأبقِ الفاصل أطول بمريح من
  النتيجة.

## أوقف الرسائل [#أوقف-الرسائل]

يرسل لك cron افتراضيًا مخرجات **كل تشغيل**. فمهمة تعمل كل خمس دقائق تنتج نحو 300
رسالة يوميًا.

اضبط حقل **Cron Email** على عنوان تريدها عليه — أو الأفضل، تخلّص من المخرجات في
الأمر نفسه:

```bash
# تخلّص من كل شيء
command > /dev/null 2>&1

# أبقِ الأخطاء وتخلّص من المخرجات العادية
command > /dev/null
```

والثاني هو الصحيح عادةً: صمت حين تعمل، ورسالة حين لا تعمل.

راجع [إيقاف رسائل cron](/ar/hosting/how-do-i-stop-suppress-cron-emails-from-being-sent-or-logged).

## تأكّد أنها نجحت [#تأكّد-أنها-نجحت]

اضبط المهمة لتعمل بعد دقيقة أو دقيقتين وراقب النتيجة — الرسالة إن أبقيتها، أو
أثر المهمة نفسها.

وللتأكد أن الأمر يعمل أصلًا، شغّله عبر SSH أولًا كما هو مكتوب بالضبط. فمعظم
مهام cron الفاشلة مسارات خاطئة، وcron لا يعطيك أي دلالة: بل لا ينتج شيئًا
ببساطة.

## المشكلات الشائعة [#المشكلات-الشائعة]

* **مسار خاطئ.** فـ cPanel لا يتحقّق من الأمر. استخدم مسارات مطلقة —
  `/usr/local/bin/php`، لا `php`.
* **بيئة مختلفة.** فـ cron يعمل بـ `PATH` أدنى وبلا أي من إعدادات صدفتك. فالأمر
  الذي يعمل تفاعليًا قد لا يعمل هنا.
* **تداخل التشغيلات.** فإن أمكن أن تستغرق مهمة أطول من فاصلها، فاحمها بملف قفل.

## ووردبريس [#ووردبريس]

لا تجدول `wp-cron.php` كل دقيقة. فخمس دقائق هي الصحيحة، ويجب تعطيل WP-Cron في
`wp-config.php` أولًا وإلا عمل الاثنان — راجع
[استبدال WP-Cron بمهمة cron حقيقية](/ar/hosting/wordpress/enhancing-wordpress-performance-disabling-wp-cron-for-faster-load-times).

## اقرأ أيضًا [#اقرأ-أيضًا]

* [إيقاف رسائل cron](/ar/hosting/how-do-i-stop-suppress-cron-emails-from-being-sent-or-logged)
* [ما هي عمليات الدخول](/ar/performance/entry-processes-ep-what-is-an-entry-process)
