There was a problem loading the comments.

Plesk scheduled task (cron) not running: troubleshooting checklist

Support Portal  »  Knowledgebase  »  Viewing Article

  Print

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

  1. Log in to Plesk (open it from My.GARMTECH → your hosting service → Login to Plesk).
  2. Go to Websites & DomainsScheduled Tasks.
  3. Find your task and verify it is Enabled.
  4. 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).

Share via
Did you find this article useful?  

Related Articles


Comments

Add Comment

Replying to  

Tags

© GARMTECH