آموزش Set up کردن Cron Job در cPanel (قدم‌به‌قدم)

آموزش Set up کردن Cron Job در cPanel (قدم‌به‌قدم)

Cron یک برنامه در Linux (و سایر سیستم‌عامل‌های نوع UNIX) است که برای زمان‌بندی کارهای تکرارشونده و وابسته به زمان استفاده می‌شود.
با ساختن Cron Job می‌توانید کارهای روتین سرور را خودکار کنید و در زمان صرفه‌جویی کنید.

اگر برای اجرای این سناریوها به یک سرویس پایدار نیاز دارید، می‌توانید پلن‌های هاست لینوکس ایران پارس آپتایم را ببینید یا از صفحه میزبانی وب شروع کنید. برای پروژه‌هایی که منابع اختصاصی لازم دارند هم سرور مجازی لینوکس ایران گزینه مناسب‌تری است.

Cron Job چیست؟

Cron Job معمولاً برای اجرا در تاریخ/ساعت‌های مشخص یا در بازه‌های زمانی ثابت تنظیم می‌شود.
«job» در اصل یک اسکریپت یا دستور است که معمولاً یک کار update یا نگهداری انجام می‌دهد؛ مثل:

  • منقضی کردن حساب‌های کاربری
  • ارسال ایمیل‌های خودکار
  • نمایش/تجسم داده‌ها
  • حذف حساب‌های کاربری
  • update کردن جدول‌ها
  • کارهای نگهداری (maintenance)
  • update کردن وب‌سایت

فرمت Cron ممکن است برای بار اول کمی پیچیده به نظر برسد، اما وقتی روند را یاد بگیرید، یک ابزار قدرتمند برای صرفه‌جویی روزانه در زمان است.

اجزای تشکیل‌دهنده Cron Job

برای داشتن یک Cron Job معمولاً این اجزا را نیاز دارید:

  • اسکریپت یا کاری که باید اجرا شود (یعنی command)
  • تنظیماتی که اجرای تکرارشونده را مشخص می‌کند (در cPanel)
  • خروجی/اقدام نهایی اسکریپت (مثلاً گزارش به ایمیلی که کاربر تنظیم کرده)

پیش‌نیازها

  • یک دامنه (مثلاً www.example.com)
  • یک اکانت web hosting که از cPanel پشتیبانی کند
  • نام کاربری و رمز عبور cPanel

Set up کردن Cron Job در cPanel

برای ساختن Cron Job در cPanel این ۴ مرحله را دنبال کنید:

Step 1: Log in به اکانت cPanel

وارد اکانت cPanel شوید (معمولاً از پنل کاربری سرویس میزبانی یا لینک مستقیم cPanel).

Step 2: Search برای Cron Jobs

داخل cPanel، عبارت Cron Jobs را در نوار جستجو تایپ کنید و وارد بخش مربوطه شوید.

ورود به بخش Cron Jobs در cPanel

Step 3: بروز رسانی ایمیل کران جاب

اگر می‌خواهید هنگام اجرای cron jobها اعلان دریافت کنید، در بخش Cron Email ایمیل خود را وارد کنید.
این مرحله اجباری نیست، اما پیشنهاد می‌شود.

این ایمیل‌ها کمک می‌کنند اگر مشکلی رخ داد سریع‌تر متوجه شوید. مثلاً اگر قرار بوده بعد از اجرای job ایمیل بیاید و نیامده، احتمالاً چیزی مطابق انتظار اجرا نشده است.

Note: همه اسکریپت‌هایی که با cron اجرا می‌شوند الزاماً خروجی تولید نمی‌کنند یا ایمیل نمی‌فرستند؛ این موضوع به کد (مثلاً PHP) بستگی دارد.

گاهی ایمیل پیش‌فرض اکانت cPanel از قبل برای دریافت اعلان‌ها تنظیم شده است.
اگر دیگر نمی‌خواهید اعلان‌ها را بگیرید، می‌توانید روی Update Email کلیک کنید بدون اینکه چیزی در فیلد ایمیل وارد کنید.

Step 4: تنظیم یک Cron job جدید

پایین‌تر بروید تا به بخش Add New Cron Job برسید.
قبل از تنظیم دقیق زمان و تاریخ، منوی کشویی Common Settings را پیدا کنید.

زمان‌بندی Cron Job (Cron Job Timings)

برای زمان‌بندی، می‌توانید از منوهای مربوطه انتخاب کنید یا مقدارها را دستی وارد کنید:

  • Common Settings: بازه‌های پرکاربرد را انتخاب می‌کنید و سیستم به‌صورت خودکار فیلدهای Minute/Hour/Day/Month/Weekday را پر می‌کند.
  • Minute: تعداد دقیقه بین هر اجرا یا دقیقه مشخص در یک ساعت
  • Hour: تعداد ساعت بین اجراها یا ساعت مشخص در روزهای انتخاب‌شده
  • Day: تعداد روز بین اجراها یا روز مشخص در ماه
  • Month: تعداد ماه بین اجراها یا ماه مشخص در سال
  • Weekday: اجرای هفتگی در روز(های) مدنظر

در فیلد Command دستور/کامندی که می‌خواهید با cron job اجرا شود را وارد کنید.

Note: باید برای فیلدهای Minute، Hour، Day، Month، Weekday و Command مقدار تعیین کنید. هنگام استفاده از دستور rm داخل cron job خیلی مراقب باشید؛ اگر گزینه‌ها را درست نزنید ممکن است داده‌های دایرکتوری home را حذف کنید.

بخش “Job” (The “Job” Part)

فیلد نهایی در Add New Cron Job همان Command است؛ جایی که مسیر فایل/اسکریپت یا دستور سروری را وارد می‌کنید تا در زمان‌های تعیین‌شده اجرا شود.

بعد از وارد کردن Command، روی دکمه Add New Cron Job کلیک کنید.

اگر می‌خواهید یک اسکریپت PHP را اجرا کنید، command معمولاً ۲ بخش دارد:

  1. مسیر PHP روی سرور
  2. مسیر فایل/اسکریپتی که می‌خواهید اجرا شود

نمونه مسیرها:

/usr/local/bin/ea-php# - EasyApache (VPS/Dedicated CPU Servers without CloudLinux).
/opt/alt/php#/usr/bin/php - CloudLinux.

Note: علامت # باید با ورژن مناسب PHP جایگزین شود. مثال‌ها:

ea-php73/php73
ea-php70/php70

بعد از ساخت موفق، معمولاً پیامی مشابه زیر می‌بینید:

cPanel successfully added the cron job.

 

Edit یا Delete کردن Cron Job

گاهی لازم است یک یا چند cron job را تغییر دهید یا حذف کنید. برای این کار:

  1. به پایین صفحه بروید تا بخش Current Cron Jobs را ببینید.
  2. روی Edit یا Delete کلیک کنید.
Edit یا Delete در Current Cron Jobs

در حالت Edit، تنظیمات cron job نمایش داده می‌شود؛ تغییرات لازم را انجام دهید و روی Edit Line بزنید:

بخش Current Cron Jobs و گزینه‌های Edit و Delete
اعمال تغییرات با Edit Line

در حالت Delete یک پنجره تأیید باز می‌شود؛ روی دکمه Delete کلیک کنید:

حذف Cron Job با Delete

جمع‌بندی

همان‌طور که دیدید، ساختن cron jobs در cPanel روند نسبتاً سرراستی دارد. اگر این ابزار برایتان کاربردی است، می‌توانید برای کارهای بیشتری هم از آن استفاده کنید.

اگر بعد از ساخت Cron Job مشکلی پیش آمد و مطمئن نیستید از کجا باید بررسی را شروع کنید، بهتر است لاگ‌ها و مسیر Command را دوباره چک کنید. همچنین اگر سرویس‌تان روی سرور مجازی است، داشتن منابع پایدار و دسترسی کامل کمک زیادی می‌کند: مشاهده پلن‌های سرور مجازی پارس آپتایم.

سؤالات پرتکرار (FAQ)

۱) آیا تنظیم Cron Email اجباری است؟

خیر. اما پیشنهاد می‌شود تا اگر اجرای job خطا داد یا خروجی مهمی تولید شد، مطلع شوید.

۲) چرا بعضی Cron Jobها ایمیل نمی‌فرستند؟

همه اسکریپت‌ها خروجی تولید نمی‌کنند. ارسال ایمیل به خروجی/رفتار اسکریپت و پیکربندی آن بستگی دارد.

۳) مهم‌ترین بخش هنگام ساخت Cron Job چیست؟

درست بودن زمان‌بندی (Minute/Hour/Day/Month/Weekday) و دقیق بودن مسیر/دستور در Command.

۴) هنگام استفاده از rm در Cron Job چرا باید مراقب بود؟

چون اگر گزینه‌ها یا مسیر را اشتباه بزنید، ممکن است فایل‌ها/دایرکتوری‌های مهم (حتی home) حذف شوند.

 

مطالعه این مطالب را هم توصیه میکنیم

خدمات مورد نیاز شما را با کیفیتی که انتظار دارید و قیمتی که انتظار ندارید.

آیا این مطلب برای شما مفید بود؟
پارس آپتایم | ارائه‌دهنده VPS و میزبانی وب