Cron Jobs: Là chức năng dùng để thực thi định kì lệnh nào đó trong một khoảng thời gian được xác định trước bởi người quản trị. Những chức năng cơ bản như: Tự động Backup dữ liệu, Tự động gửi Email, tự động thực hiện các lệnh PHP, Perl, or Python Scripts… hoặc một lệnh nào đó trong Linux do bạn tạo ra. Bài viết này sẽ hướng dẫn bạn sử dụng tính năng lập lịch cronjob tại cPanel
Làm thế nào truy cập vào Cron Job trong cPanel
Bước 1: Đăng nhập vào cPanel
Bước 2:
Trong giao diện Cpanel bạn bạn kéo xuống mục Advanced và chọn Cron Jobs.
Sau khi chọn cron jobs bạn sẽ vào trang có giao diện như ảnh sau.
Cài đặt Email thông báo khi cron job hoạt động.
Trong phần Cron Email quý bạn Email của mình vào để nhận thông tin kết quả Cron Jobs đã thực hiện, nếu bạn không muốn nhận thông báo bạn có thể đặt lệnh như sau:
mycommand >/dev/null 2>&1
“mycommand” bạn thay bằng lệnh của bạn
Tạo Cron job mới
Ở mục Add a New Cron Job cho chúng ta thiết lập chu kỳ thời gian chạy Cron Jobs
Các mục Minute, Hour, Day, Month, Weekday tương ứng với phút, giờ, ngày, tháng, ngày trong tuần cho quý khách lựa chọn thiết lập chu kỳ lập lại
Ví dụ 1: Sử dụng Cron Jobs chạy 1 file script có sẵn
Nếu như bạn có 1 file script tên là demo.php và đặt trong thư mục /public_html/ và muốn chạy file này cứ mỗi 5 phút 1 lần thì làm như sau
Đầu tiên ta chọn thời gian lập lại là 5 phút 1 lần
Và Command ở đây sẽ là:
php /home/user/public_html/demo.php
Và sau đó nhấp vào Add New Cron Job để khởi tạo Cron Jobs, nhớ chọn đủ các mục Minute, Hour, Day, Month, Weekday nếu không sẽ báo lỗi
Đây là kết quả tạo Cron Jobs, bạn có thể chỉnh sửa lại nếu muốn.
Ví dụ 2: Hướng dẫn chạy 1 lệnh command chu kỳ lập lại hằng ngày vào lúc 12h AM
Và Command ở đây là dòng lệnh Backup MySQL
mysqldump -u user -p pass_word database_name > backup.sql
Như vậy là bạn đã có thể tự lập một lịch thực hiện những lệnh cho riêng mình
Các lệnh đặc biệt sử dụng trong Cron job
Lệnh sẽ gồm 2 phần.
[program to execute (perl/pyth./php)] [switches] [script]
Chương trình để chạy các script sẽ là:
- php
- Python
Đối với các file đặt trên server bạn nên gọi đường dẫn trực tiếp, như /home/username/public_html/path/to/script , với username là tên user của hosting.
Với perl/cgi scripts bạn nên đặt file trong cgi-bin và chmod 755.
Ví dụ:
PHP script:
php -q /home/username/public_html/scripts/testrun.php
Python scripts:
python /home/username/public_html/path/to/script
Perl/CGI scripts:
/home/username/public_html/cgi-bin/yourscript.pl
Sử dụng User Agent String.
Thông thường khi sử dụng Share hosting vì lý do bảo mật bạn sẽ không sử dụng được wget command vì nhà cung cấp vô hiệu hóa lệnh này. Hầu hết các script chạy thông qua wget có thể được sử dụng với lệnh, lynx hoặc curl các rule trong mod_security thông thường sẽ chặn lynx và curl nếu không thiết lập user agent, để thiết lập user agent bạn có thể làm theo hướng dẫn sau.
curl --user-agent YOUR_STRING (URL) lynx -dump -useragent=YOUR_STRING (URL)
Lệnh cron bạn sử dụng như sau.
/usr/bin/curl --user-agent cPanel-Cron http://example.com/cron.php
Trong trường hợp này chúng ta định nghĩa curl User-Agent là cPanel-Cron, bạn có thể đặt nó là bất cứ điều gì bạn muốn.