ฉันมีปัญหาในการตั้งค่างาน CRON ต่อไปนี้อย่างถูกต้องเพื่อสำรองข้อมูลอัตโนมัติบนเว็บไซต์ของลูกค้า
ไซต์นี้ใช้ Joomla และฉันใช้ Akeeba Backup เพื่อจัดการการสำรองข้อมูล คำแนะนำสำหรับงาน CRON แบบบรรทัดคำสั่งมีดังนี้:
ใช้คำสั่งต่อไปนี้ในอินเทอร์เฟซ CRON ของโฮสต์ของคุณ: /path/to/php /var/www/domain.com/cli/akeeba-backup.php
อย่าลืมแทนที่ /path/to/php ด้วยเส้นทางจริงไปยังไฟล์ปฏิบัติการ PHP CLI (Command Line Interface) ของโฮสต์ อย่าลืมว่าคุณต้องใช้ไฟล์ปฏิบัติการ PHP CLI; โปรแกรมปฏิบัติการ PHP CGI (Common Gateway Interface) จะไม่ทำงานกับสคริปต์ CRON ของเรา หากไม่แน่ใจว่าหมายความว่าอย่างไร โปรดปรึกษาโฮสต์ของคุณ พวกเขาเป็นคนเดียวที่สามารถให้ข้อมูลนี้ได้
domain.com ใช้เป็นตัวอย่าง
ฉันติดตั้ง CRON และใช้งานบน Ubuntu 20.04 แล้ว
รหัสต่อไปนี้อยู่ใน crontab -e
0 3 * * * /usr/bin/php7.4 /var/www/domain.com/cli/akeeba-backup.php --profile=1 --description="การสำรองข้อมูลอัตโนมัติเต็มรูปแบบ"
ไซต์กำลังเรียกใช้ PHP 7.4 โดยติดตั้ง FPM
เมื่อฉันวิ่ง ซึ่ง php.ini
ต่อไปนี้จะถูกส่งกลับ: /usr/bin/php
เมื่อฉันวิ่ง ls -l /usr/bin/php.ini
ต่อไปนี้จะถูกส่งกลับ: lrwxrwxrwx 1 รูทรูท 21 ส.ค. 31 18:09 /usr/bin/php -> /etc/alternatives/php
เมื่อฉันวิ่ง ls -l /etc/ทางเลือก/php.ini
ต่อไปนี้จะถูกส่งกลับ: lrwxrwxrwx 1 รูทรูท 15 ส.ค. 31 18:53 /etc/alternatives/php -> /usr/bin/php8.0
เนื่องจากสิ่งนี้แสดงเวอร์ชัน 8.0 แทนที่จะเป็น 7.4 ซึ่งไซต์กำลังใช้ นี่หมายความว่างาน CRON ควรใช้เวอร์ชัน 8 แทน
เอาต์พุตบันทึกตัวอย่างจาก /var/log/syslog
1 ต.ค. 11:39:01 น. โดเมน CRON[38538]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; จากนั้น /usr/lib/ php/sessionclean; fi)
ความช่วยเหลือใด ๆ ที่ชื่นชมอย่างมาก