DirectAdmin: ตั้งเวลารัน Script ด้วย Cron Jobs

📅 10 มิ.ย. 2569 · ⏱ อ่าน ~2 นาที · 👁 6 ครั้ง

Cron Job คืออะไร

Cron Job คือคำสั่งที่ระบบรันให้อัตโนมัติตามเวลาที่กำหนด เช่น:

  • รัน WordPress cron (wp-cron.php) ทุก 15 นาที
  • Backup ฐานข้อมูลทุกคืนตี 2
  • Clear cache ทุกชั่วโมง

สร้าง Cron Job ใหม่

  1. ไปที่ Account Manager → Cron Jobs
  2. กรอก:

- Minute — นาที (0–59) หรือ * = ทุกนาที

- Hour — ชั่วโมง (0–23) หรือ * = ทุกชั่วโมง

- Day of Month — วันที่ (1–31)

- Month — เดือน (1–12)

- Day of Week — วันในสัปดาห์ (0=Sun … 6=Sat)

- Command — คำสั่งที่จะรัน

  1. กด Add

ตัวอย่างค่าที่ใช้บ่อย

ความถี่MinHourDayMonDoW
ทุกนาที*
ทุก 15 นาที/15*
ทุกชั่วโมง0
ทุกวัน ตี 202*
ทุกวันจันทร์ 9โมง091

ตัวอย่าง Command

รัน PHP script

/usr/local/bin/php /home/username/domains/yourdomain.com/public_html/cron.php

รัน WordPress cron

cd /home/username/domains/yourdomain.com/public_html && /usr/local/bin/php wp-cron.php

Backup ฐานข้อมูล

/usr/bin/mysqldump -u user -ppassword dbname | gzip > /home/username/backups/db-$(date +\%Y\%m\%d).sql.gz
สัญลักษณ์ % ในคำสั่ง cron ต้อง escape เป็น \%

ปิด output email (ไม่ให้ส่งเมลทุกครั้งที่รัน)

ต่อท้าย command:

... > /dev/null 2>&1

หรือใส่อีเมลของคุณในช่อง Cron E-mail เพื่อรับ output ทุกครั้ง (เหมาะกับช่วงทดสอบ)

ตรวจสอบว่า Cron รันจริง

ใส่ log ใน script เช่น

file_put_contents(__DIR__.'/cron.log', date('Y-m-d H:i:s').PHP_EOL, FILE_APPEND);

แล้วเปิด cron.log เช็คดู

ลบ Cron Job

ไปที่หน้า Cron Jobs → กด Delete ที่บรรทัดที่ต้องการ

บทความนี้มีประโยชน์ไหม?

📚 บทความที่เกี่ยวข้อง