Troubleshooting
Hosting limitations
What a host can do to get in the way, and what to change.
| Symptom | Likely cause | What to change |
|---|---|---|
| Health page says blocked by a firewall | Imunify360, Sucuri, Cloudflare or Wordfence treats the platform as a bot | Allow the platform's address where the page says; expect the site to keep reporting outbound meanwhile |
| Authentication failed, JWT named | a JWT plugin answers bearer tokens before the worker | Exclude the worker's wpocto/v1 namespace in the plugin, as the Health page says, or bring the site to worker 2.3.0 |
| Authentication failed on a CGI/FastCGI host, token correct | the host strips the Authorization header | Worker 2.3.0 reads the platform's own header; on older workers, the host's rewrite rule for Authorization |
| Data does not change after a sync | a page cache stores the REST API | Exclude wp-json/wpocto/v1 in the cache plugin; LiteSpeed Cache is told directly by the worker |
| Backups never get past a step | the host kills requests before a step finishes | Ask for the standard thirty seconds; the worker adapts step size but cannot work in a few seconds |
| Outbound data ages while the site is up | WP-Cron disabled with no system cron | Enable WP-Cron or add a system cron calling wp-cron.php |
| The site cannot call the platform at all | outbound HTTPS blocked by the host | Allow wpocto.com outbound |
| Timeouts on everything | an overloaded host | The platform backs off; the host needs attention |
The worker is designed for thirty seconds and 128 MB, no shell and no WP-CLI. A host that gives less than that is outside what it is built for. Requirements and hosting.