Capitolo 15 · 15.5
Impostare un'app Node.js
Il Suo pacchetto hosting non supporta solo PHP. Con Setup Node.js App può impostare autonomamente un'applicazione Node.js, ad esempio un'app Express o una piccola API. Ogni app riceve una propria versione di Node.js e una propria cartella.
Creare un'app
- In DirectAdmin, sotto Funzioni Aggiuntive, clicchi su Setup Node.js App.
- Clicchi su CREATE APPLICATION (1).
- Scelga alla voce Node.js version (1) la versione. Può scegliere tra Node.js 9, 16, 20, 22 e 24. Per impostazione predefinita è selezionata la 16; Le consigliamo di scegliere la versione più recente supportata dalla Sua app, poiché la 9 e la 16 non riceveranno più aggiornamenti.
- Scelga alla voce Application mode Development o Production. Questo imposta la variabile NODE_ENV. Per un'app in produzione scelga Production.
- Inserisca alla voce Application root (2) la cartella in cui si troveranno i file della Sua app, ad esempio apps/mioapp. Scelga una cartella al di fuori di public_html.
- Scelga alla voce Application URL (3) il dominio ed eventualmente un percorso, ad esempio api per suodominio.it/api. Se lascia il percorso vuoto, l'app verrà eseguita sull'intero dominio.
- Inserisca alla voce Application startup file (4) il file con cui si avvia la Sua app, come app.js o server.js.
- Se lo desidera, aggiunga alla voce Environment variables con ADD VARIABLE impostazioni personalizzate.
- Clicchi su CREATE.



Caricare il codice e installare i pacchetti
- Carichi il Suo codice nella cartella scelta in Application root, utilizzando Gestione file, FTP o Git (vedere Caricare e scaricare file e Git: aggiornare il Suo sito web da un deposito).
- C'è un file package.json in quella cartella? Torni allora a Setup Node.js App, clicchi sulla matita accanto alla Sua app per modificarla e clicchi su Run NPM Install. I pacchetti verranno quindi installati.
- Clicchi su Restart per avviare (o riavviare) l'app.
Dopo ogni modifica al codice, clicchi nuovamente su Restart. Altrimenti continuerà a essere eseguita la versione precedente.
Cose utili da sapere
- La Sua app deve rimanere in ascolto sulla porta assegnata dal server. Utilizzi nel codice process.env.PORT e non un numero di porta fisso.
- L'app viene eseguita entro i limiti del Suo pacchetto (CPU, memoria, processi; vedere Resource Usage: CPU, memoria e processi). Per un'app più pesante scelga un pacchetto più grande.
- Su un pacchetto con SSH (vedere Chiavi SSH e accesso tramite SSH) nella parte superiore della schermata della Sua app trova un comando per attivare nel terminale la versione di Node.js e la cartella corrette. Da quel momento node e npm funzionano come è abituato a fare.
- Un sito web creato con un generatore di siti (HTML statico) non necessita di Node.js. Lo carichi semplicemente in public_html.
Domande frequenti
La mia app restituisce un errore 503.
L'app non si avvia. Solitamente il file di avvio non è corretto, mancano dei pacchetti (ha dimenticato di eseguire Run NPM Install) oppure c'è un errore nel codice. Controlli nella cartella della Sua app il file stderr.log per il messaggio di errore.
La mia app può rimanere attiva tutto il giorno?
Sì, purché rimanga entro i limiti del Suo pacchetto. L'app viene avviata quando arriva una richiesta e viene interrotta dopo un periodo senza richieste. Un'app che deve rimanere sempre attiva senza visitatori, come un bot, è più adatta a un VPS.
La mia app è bloccata e non risponde a Stop o Restart.
Attenda un minuto e riprovi. Se non funziona ancora, apra un ticket indicando il nome della Sua app.
