Documentazione ServBay: Impostare una versione specifica di Node.js per il tuo progetto, script e sito web
ServBay è un potente ambiente locale per lo sviluppo web che supporta diversi linguaggi di programmazione e stack tecnologici, incluso Node.js. In ambito di sviluppo, potresti trovarti nella situazione di dover usare una versione specifica di Node.js per progetti diversi, per un singolo script oppure per un intero sito. Ad esempio, un progetto legacy potrebbe necessitare di Node.js 14, mentre uno più recente potrebbe richiedere le nuove funzionalità di Node.js 20. ServBay offre soluzioni flessibili per tutte queste esigenze.
In questa guida troverai istruzioni dettagliate su come assegnare facilmente una particolare versione di Node.js a uno script o a un sito web in ServBay, oltre a sfruttare la configurazione a livello di progetto.
Assegnare la versione Node.js e configurazioni tramite file .servbay.config
Per i progetti che richiedono un controllo accurato sulla versione di Node.js e le relative variabili di ambiente, ServBay fornisce una configurazione a livello progetto tramite il file .servbay.config
posto nella directory root del progetto. Questo file ti permette di specificare la versione di Node.js da utilizzare, gli indirizzi dei repository del package manager, i percorsi delle cache ecc., garantendo ambienti coerenti e isolati.
Un esempio di file .servbay.config
che definisce una versione specifica di Node.js e le configurazioni di npm/yarn e cache è il seguente:
NODE_VERSION=20
YARN_CONFIG_REGISTRY=https://registry.npmmirror.com/ # Esempio: utilizzare un mirror specifico
NPM_CONFIG_REGISTRY=https://registry.npmmirror.com/ # Esempio: utilizzare un mirror specifico
NPM_CONFIG_CACHE=/Applications/ServBay/tmp/npm/cache # Esempio: percorso personalizzato per la cache
YARN_CONFIG_CACHE=/Applications/ServBay/tmp/yarn/cache # Esempio: percorso personalizzato per la cache
2
3
4
5
Spiegazione:
NODE_VERSION
: specifica il major version di Node.js da usare per il progetto. ServBay individuerà e userà la versione di Node.js installata corrispondente.YARN_CONFIG_REGISTRY
,NPM_CONFIG_REGISTRY
: definiscono il repository di pacchetti da usare con i package manager npm o yarn.NPM_CONFIG_CACHE
,YARN_CONFIG_CACHE
: impostano il percorso della cache per npm o yarn. Nell’esempio si utilizzano directory temporanee predefinite di ServBay sotto/Applications/ServBay/tmp/
.
Generalmente, il file .servbay.config
va posizionato nella directory radice del progetto. Per maggiori dettagli su settaggi e utilizzo, consulta la sezione sulla configurazione .servbay.config nel manuale ServBay.
Eseguire uno script Node.js con una versione specifica da riga di comando
Se non desideri fissare a livello di progetto la versione di Node.js, ma ti serve semplicemente lanciare uno script con una certa versione in modo occasionale, puoi sfruttare gli alias da terminale forniti da ServBay.
All’interno del terminale ServBay (apribile dall’interfaccia dell’app), puoi specificare la versione di Node.js per uno script usando il comando node-<version>
. ServBay crea automaticamente questi alias per ogni versione di Node.js installata.
Ad esempio, per eseguire script.js
con Node.js 14, il comando sarà:
$ node-14 script.js
Hello World
Node.js Version: 14.17.0 # Esempio di output, la versione effettiva può variare
$ node-16 script.js
Hello World
Node.js Version: 16.3.0 # Esempio di output, la versione effettiva può variare
$ node-20 script.js
Hello World
Node.js Version: 20.10.0 # Esempio di output, la versione effettiva può variare
2
3
4
5
6
7
8
9
10
11
Spiegazione degli esempi
$ node-14 script.js
: eseguescript.js
usando Node.js versione 14 (la versione precisa dipende da cosa è installato su ServBay).$ node-16 script.js
: esegue lo script con Node.js 16.$ node-20 script.js
: esegue lo script con Node.js 20.
Questa modalità ti permette di testare facilmente la compatibilità su diverse versioni o lanciare rapidamente attività che richiedono una specifica versione di Node.js, senza cambiare la configurazione globale.
Impostare la versione Node.js del sito web tramite interfaccia ServBay
ServBay offre la possibilità di assegnare direttamente la versione Node.js predefinita a ciascun sito ospitato tramite la sua interfaccia grafica, soluzione ideale per applicazioni che usano Node.js come backend (ad esempio progetti con framework Node.js dietro proxy Caddy o Nginx) o che richiedono un ambiente Node.js dedicato.
Procedura
Apri l’interfaccia di gestione ServBay: Avvia l’app ServBay e accedi alla dashboard tramite browser (di solito su
http://localhost:5200
o tramite link nell’app).Naviga nella gestione siti: Dal menu laterale, clicca su
Siti Web
(Website).Seleziona e modifica il sito: Dai siti elencati, trova quello che vuoi configurare (ad esempio, creato in
/Applications/ServBay/www/servbay.demo
). Premi l’icona di modifica (di solito un ingranaggio o una matita) a destra oppure clicca direttamente sul nome per entrare nei dettagli.Imposta la versione di Node.js: Nella pagina di configurazione del sito, trova la sezione che riguarda la versione di Node.js, tipicamente un menu a tendina. Seleziona la versione di Node.js da utilizzare come predefinita per il sito.
Salva le modifiche: Dopo aver scelto la versione, premi il pulsante
Salva
oApplica
in fondo alla pagina per salvare le impostazioni.Riavvia il sito o ServBay (se necessario): Alcune modifiche richiedono il riavvio del web server (come Caddy o Nginx) o dell’intero ServBay. ServBay ti sta avviserà se serve riavviare i servizi per rendere effettive le modifiche.
Avvertenze
- Versione Node.js installata e attiva: La versione selezionata deve essere già installata e attiva nella pagina
Pacchetti
di ServBay. In caso contrario, vai prima suPacchetti
per installare e attivare la versione desiderata. - Tipo di sito: Questa impostazione è utile solo per siti/applicazioni che sfruttano Node.js per l’esecuzione backend (ad esempio app basate su Express.js, Next.js, NestJS, ecc.). Per siti statici o basati esclusivamente su PHP, Python, Go, questa opzione ha effetto nullo o limitato.
- Test di compatibilità: Dopo aver modificato la versione Node.js, testa tutte le funzionalità del sito per assicurarti che tutte le dipendenze funzionino correttamente con la nuova versione e non ci siano problemi di compatibilità.
- Relazione con
.servbay.config
: L’impostazione a livello di sito funge da valore predefinito. Se nella directory del sito è presente anche un file.servbay.config
che specificaNODE_VERSION
, la configurazione del file avrà la priorità, sovrascrivendo quella a livello di sito per garantire un controllo ancora più granulare.
Conclusioni
ServBay, in quanto ambiente di sviluppo locale completo, offre diverse strategie flessibili e avanzate per gestire e specificare il runtime Node.js in ogni contesto. Puoi sfruttare il file .servbay.config
nel root del progetto per un controllo preciso delle variabili d’ambiente e delle versioni, usare alias rapidi da terminale come node-<version>
per lanciare script con versioni specifiche, oppure assegnare una versione predefinita Node.js a ogni sito direttamente dall’interfaccia di ServBay. Queste funzionalità ti aiutano a gestire facilmente i requisiti per ogni progetto, sia per esigenze di retrocompatibilità, test su nuove feature, sia per mantenere coerenza tra ambiente di sviluppo e produzione: ServBay ti garantisce massimo supporto e aumenta considerevolmente la produttività e la facilità di gestione dei tuoi ambienti di sviluppo.