کرون در مودل
کرون یکی از اسکریپتهای مودل است که باید بهطور مرتب و در پسزمینه اجرا شود. این اسکریپت کارهایی که باید بهطور مرتب و در زمانهای مشخصی انجام شوند را اجرا میکند.
تنظیم کرون برای اجرا شدن بهطور مرتب بسیار مهم است. اگر کرون به طور مرتب اجرا نشود مودل شما درست کار نخواهد کرد.
کرون چهکار میکند؟
مواردی وجود دارند که باید در مودل به صورت مرتب بررسی شوند. بهطورمثال هر گاه کاربری در یکی از تالارهای گفتگو مطلبی را بیان میکند، نیم ساعت فرصت دارد تا مطلبش را ویرایش کند و تغییر دهد. بعد از نیم ساعت، دیگر امکان تغییر دادن مطلب وجود ندارد و مطلب بیانشده از طریق پست الکترونیکی برای تمام کاربران ارسال خواهد شد. بررسی اینکه آیا نیم ساعت از بیان شدن مطلب گذشته است یا خیر بر عهدهٔ کرون است.
مثال دیگر لغو ثبتنام کاربرانی است که ثبتنامشان در درسها منقضی شده است. مطلع شدن از اینکه آیا ثبتنام کاربری منقضی شده است یا خیر نیازمند این است که اسکریپتی بهطور مرتب به بررسی منقضی شدن ثبتنام کاربران یپردازد.
اجرای کرون
اجرای کرون به دو صورت ممکن است: از راه وب و از طریق اجرا در خط فرمان
اجرای کرون از طریق وب
برای اجرای کرون از طریق وب کافیست که با استفاده از یک مرورگر وب به آدرس کرونتان که چیزی شبیه به http://your.moodle.site/admin/cron.php است بروید.
اجرای کرون از خط فرمان
فایل اجرایی کرون که از طریق خط فرمان قابل اجرا میباشد در مسیر /path/to/moodle/admin/cli/cron.php قرار دارد. کافیست که با استفاده از دستور اجرایی php در خط فرمان، فایل کرون را اجرا کنید.
تنظیم کرون در سرور لینوکسی
برای اینکه کرون بهطور منظم در یک سرور لینوکسی اجرا شود میتوانید از ابزار crontab استفاده کنید.
$ crontab -e
با اجرای خط فوق یک ویرایشگر اجرا میشود. برای اینکه فایل cron مودل هر ۱۵ دقیقه اجرا شود (بسته به اینکه بخواهید از کدامیک از روشهای اجرای کرون مودل استفاده کنید) یکی از خطهای زیر را اضافه کنید:
*/15 * * * * /usr/bin/wget -q -O /dev/null http://url.of.your/moodle/admin/cron.php
یا
*/15 * * * * /usr/bin/php /path/to/moodle/admin/cli/cron.php > /dev/null
تنظیم کرون در سرور ویندوزی
راحتترین راه برای اینکه کرون بهطور منظم در یک سرور ویندوزی اجرا شود استفاده از بستهٔ MoodleCron-Setup.exe است که با نصب یک سرویس ویندوزی کوچک تمام کارها را برای شما انجام میدهد.