What issue are you experiencing?
When strapi-plugin-io is enabled on a reverse-proxied host DigitalOcean App Platform, running strapi transfer --to <remote> fails immediately with:
[FATAL] Failed to initialize the connection: Unexpected server response 504
Disabling the plugin (enabled: false) allows the transfer to complete successfully every time, confirming plugin-io is the source of the conflict.
Suspected cause: engine.io attaches a raw upgrade event listener directly to the underlying HTTP server. On a reverse-proxied host this listener appears to intercept WebSocket upgrade requests destined for Strapi's transfer endpoint (/admin/transfer/runner/push) before they can be handled, returning an unexpected response that the proxy surfaces as a 504.
Steps To Reproduce
- Deploy a Strapi v5 app with strapi-plugin-io enabled to DigitalOcean App Platform
- Run:
yarn strapi transfer --to https://<your-app>.ondigitalocean.app/admin --exclude files
- See error: [FATAL] Failed to initialize the connection: Unexpected server response 504
- Set
enabled: false on the plugin and repeat step 2 — transfer completes successfully
What version of the plugin are you using?
5.8.2
What strapi version are you using?
5.45.0
What issue are you experiencing?
When strapi-plugin-io is enabled on a reverse-proxied host DigitalOcean App Platform, running
strapi transfer --to <remote>fails immediately with:[FATAL] Failed to initialize the connection: Unexpected server response 504
Disabling the plugin (enabled: false) allows the transfer to complete successfully every time, confirming plugin-io is the source of the conflict.
Suspected cause: engine.io attaches a raw
upgradeevent listener directly to the underlying HTTP server. On a reverse-proxied host this listener appears to intercept WebSocket upgrade requests destined for Strapi's transfer endpoint (/admin/transfer/runner/push) before they can be handled, returning an unexpected response that the proxy surfaces as a 504.Steps To Reproduce
yarn strapi transfer --to https://<your-app>.ondigitalocean.app/admin --exclude filesenabled: falseon the plugin and repeat step 2 — transfer completes successfullyWhat version of the plugin are you using?
5.8.2
What strapi version are you using?
5.45.0