Plesk Scheduled Tasks (cron jobs) are a reliable way to run scripts automatically. If your task does not run, runs at the wrong time, or produces no results, the cause is usually one of a few configuration issues.
1) Confirm the task is enabled and saved
- Log in to Plesk (open it from My.GARMTECH → your hosting service → Login to Plesk).
- Go to Websites & Domains → Scheduled Tasks.
- Find your task and verify it is Enabled.
- Open the task and click OK/Save to make sure changes are stored.
2) Check the schedule and timezone
- Confirm you selected the correct schedule (every X minutes / hourly / daily).
- Remember that tasks use the server timezone. If you schedule something “at 00:05”, it runs at 00:05 server time.
3) Verify what you run (PHP script vs URL vs command)
Option A — “Run a PHP script” (recommended for hosting)
- Make sure the script path is correct and the file exists.
- Place scripts inside your subscription (for example, in
httpdocs or a subfolder).
- If the script needs a specific PHP version, it is usually best to use “Run a PHP script” because it runs under your subscription’s PHP settings.
Option B — “Fetch a URL”
- Use a full URL including
https://.
- If the URL is protected (admin page), add a secure token to the URL or use another method.
- Make sure the site opens in a browser first (without Cloudflare “Under Attack” mode, blocking, etc.).
Option C — “Run a command”
- Use this only if you know exactly what you are doing. A wrong command or missing permissions can silently fail.
- If you run a script file, it must be executable and have the correct interpreter (shebang) if required.
4) Enable output logging (this is the fastest way to find the issue)
A task that “does nothing” often fails with an error, but the error is not being collected.
- In the task settings, enable output/error reporting if available (for example, send output to an email address or save it).
- If you run a command, redirect output to a file in your hosting space (example):
/usr/bin/php /var/www/vhosts/yourdomain.tld/httpdocs/script.php >> /var/www/vhosts/yourdomain.tld/logs/cron.log 2>&1
Note: paths and availability depend on the server. If you are not sure, use the “Run a PHP script” option instead.
5) Check common hosting limits that can stop a cron job
- Disk quota exceeded — scripts cannot write temporary files or logs.
- Subscription suspended — tasks may not run while the service is suspended.
- Long runtime — a task can time out if it runs too long. Optimize the script or split it into smaller jobs.
6) If the task still does not run
- Delete the task and create it again (sometimes the simplest fix).
- Test the script manually (open it in a browser if it is a web script, or run it once via SSH if you have SSH access).
- If this is a WordPress task, consider disabling WP‑Cron and using a real cron job (this improves reliability on busy sites).