Skip to main content
Se la tua applicazione viene rifiutata all’upload, va in crash all’avvio o non risponde mai, il codice di errore o il log della console indica quasi sempre il problema esatto. Trova la corrispondenza qui sotto.

Errori di upload e deploy

Questi codici vengono restituiti dalla dashboard, dalla CLI o dall’API quando Square Cloud rifiuta un upload. Non viene pubblicato nulla, quindi risolvi la causa e carica di nuovo.

INVALID_DEPENDENCY

Cosa significa: l’upload non ha un file delle dipendenze per il suo linguaggio, oppure il file è vuoto. Square Cloud verifica che questo file esista nella radice dello zip prima di installare qualsiasi cosa. Come risolvere: metti il file delle dipendenze nella radice dello zip, accanto a squarecloud.app, e assicurati che non sia vuoto: package.json (Node.js, Bun, Deno), requirements.txt o pyproject.toml (Python), Cargo.toml (Rust), Gemfile (Ruby), go.mod o go.work (Go) oppure mix.exs (Elixir). Poi carica di nuovo. Un pacchetto o una versione scritti male compaiono più tardi, come errore di installazione nei log.

KEEP_CALM

Cosa significa: tu, o un’automazione, avete ripetuto un’azione troppo in fretta, come un riavvio, un upload o uno snapshot. Come risolvere: attendi qualche istante e riprova. L’azione rifiutata semplicemente non è stata eseguita: KEEP_CALM non arresta né influenza mai un’applicazione in esecuzione. Se invece uno snapshot fallisce con DAILY_SNAPSHOTS_LIMIT_REACHED, la quota giornaliera di snapshot del tuo piano è esaurita fino al giorno successivo.

Il sito non si carica

Cosa significa: l’applicazione è pubblicata, ma aprendo il suo indirizzo compare una di queste pagine invece del tuo sito:
  • “The website took too long to respond”: Square Cloud ha trovato la tua applicazione ma non ha ricevuto risposta.
  • “This site couldn’t be found”: a quell’indirizzo non è pubblicato alcun sito.
Come risolvere un timeout:
  1. Fai in modo che il server resti in ascolto sulla porta 80 e sull’host 0.0.0.0. Un server associato a localhost, 127.0.0.1 o a qualsiasi altra porta (3000, 5173, 8080…) non è raggiungibile. Il runtime imposta le variabili d’ambiente PORT e HOST a questi valori, quindi leggile:
  2. Apri i log: se l’applicazione è andata in crash o sta ancora installando le dipendenze o compilando, il sito non può ancora rispondere. Correggi l’errore mostrato lì, oppure attendi la fine della build.
  3. Controlla che MEMORY lasci abbastanza spazio alla build: la build di un framework che esaurisce la RAM arresta l’applicazione con LACK_OF_RAM.
Come risolvere “This site couldn’t be found”:
  1. Controlla l’indirizzo: è https://<SUBDOMAIN>.squareweb.app, con il sottodominio del tuo file di configurazione.
  2. Se hai appena pubblicato, attendi fino a un minuto che l’indirizzo venga pubblicato.
  3. Un’applicazione pubblicata senza SUBDOMAIN non è un sito e non può diventarlo: caricala di nuovo come nuova applicazione con SUBDOMAIN impostato.
  4. Su un dominio personalizzato, il DNS potrebbe essere ancora in propagazione. Vedi perché il tuo dominio non si è ancora propagato.

EADDRINUSE (porta già in uso)

Cosa significa: l’app cerca di collegarsi due volte alla stessa porta di rete. Perché accade: nel codice vengono avviati due server, oppure una chiamata listen(...) viene creata di nuovo all’interno di un event handler (ad esempio, a ogni richiesta o a ogni riconnessione) invece che una sola volta all’avvio. Come risolvere:
  1. Avvia un solo server web, una sola volta, in ascolto sulla porta 80 e sull’host 0.0.0.0.
  2. Cerca nel tuo codice più di una chiamata .listen() (Node.js) o run() (Python/Flask/Django) e rimuovi quella duplicata.
  3. Assicurati che la chiamata listen si trovi al livello superiore del tuo file di avvio, non dentro un callback che può attivarsi più di una volta.

”Cannot find module” (Node.js) e ModuleNotFoundError (Python)

Cosa significa: un pacchetto importato dal tuo codice non è installato. Perché accade:
  • La libreria non è elencata nelle dependencies di package.json (Node.js) o in requirements.txt/pyproject.toml (Python), quindi non viene mai installata sulla piattaforma, anche se funziona sulla tua macchina.
  • In Node.js, il pacchetto si trova solo in devDependencies. Le applicazioni vengono eseguite con NODE_ENV=production, quindi npm install salta le dipendenze di sviluppo.
Come risolvere:
  1. Aggiungi il pacchetto mancante a dependencies (o al tuo file delle dipendenze Python) con una versione valida.
  2. Conferma che il file delle dipendenze stesso sia incluso nello zip caricato.
  3. Riavvia l’applicazione. Per Node.js, le dipendenze vengono installate solo quando node_modules non esiste: elimina node_modules (e package-lock.json, se lo hai caricato) dal file manager della dashboard, poi riavvia per una reinstallazione pulita.

Errori dei binding nativi di better-sqlite3

Cosa significa: un errore come Could not locate the bindings file quando la tua app usa better-sqlite3 (direttamente, o tramite quick.db). Perché accade: la versione installata di better-sqlite3 precede l’attuale versione LTS di Node.js della piattaforma, quindi il suo binding nativo precompilato non corrisponde al runtime. Come risolvere:
  1. Aggiorna better-sqlite3 alla versione 12.5.0 o successiva (se usi quick.db, aggiornalo alla versione 9.1.7 o successiva).
  2. Elimina node_modules e package-lock.json.
  3. Riavvia l’applicazione per una reinstallazione pulita che ricostruisce i binding nativi contro il runtime attuale.

Arrestata per un limite di risorse

Se i log terminano con [SQUARE-SHIELD] LACK_OF_RAM, LACK_OF_CPU o ABUSE_REQUESTS, oppure l’avvio dell’applicazione fallisce con CONTAINER_TEMPORARILY_SUSPENDED, Square Cloud l’ha arrestata perché ha superato le sue risorse. La tabella degli stati spiega ciascuno e come risolverlo.

Gli orari sono sfasati di qualche ora

Le applicazioni vengono eseguite in UTC. Un job pianificato per le 09:00 viene eseguito alle 09:00 UTC, e gli orari che il tuo codice stampa nei log sono in UTC. Converti gli orari nel codice, oppure consulta come cambiare il fuso orario della tua applicazione nel centro assistenza.

Guide correlate

Sei ancora bloccato dopo aver confrontato i log con gli errori qui sopra? Il nostro team di supporto può esaminare con te il crash specifico.

Contattaci

Se continui a riscontrare difficoltà tecniche, il nostro team di supporto specializzato è disponibile ad assisterti. Contattaci e saremo felici di aiutarti a risolvere qualsiasi problema: la qualità del supporto è una parte importante del motivo per cui gli sviluppatori valutano Square Cloud 4,9/5 su 402 recensioni su Google e Trustpilot.