Come configurare un’applicazione Node.js con Apache su Ubuntu 16.04
Esecuzione di script Node.js come servizio
Sebbene gli script open source di JavaScript Node.js possano essere eseguiti dallo schermo attraverso la riga di comando, l’esecuzione degli script come servizio, usando il gestore di processi PM2, conferisce a questi un insieme più affidabile di comportamenti. Quando vengono eseguiti come servizio in questo modo, gli script vengono automaticamente riavviati se il server viene riavviato o lo script va in crash.
PM2 è un gestore di processi per Node.js con una vasta gamma di caratteristiche che potete usare per controllare e gestire i vostri script Node.js. Visitate il sito web ufficiale di PM2 per ulteriori informazioni sul suo uso.
Requisiti
- Un server cloud che usi Linux (Ubuntu 16.04).
- Un nome di dominio funzionante che si colleghi al server.
- Un server web Apache installato e funzionante.
Grazie a un credito iniziale, puoi provare gratuitamente il Server Cloud di IONOS per 1 mese (o fino all’esaurimento del credito) e beneficiare del giusto mix di prestazioni e sicurezza!
Installare Node.js
Aggiornate i pacchetti del vostro server e installate curl con i seguenti comandi:
Scaricate l’archivio dei pacchetti personali (PPA) di Node.js, che contiene una versione di Node.js più recente rispetto ai repository di Ubuntu:
A questo punto, eseguite il comando nodesource_setup.sh per aggiungere il PPA alla cache dei pacchetti del vostro server:
Questo script aggiornerà il server automaticamente. Non sarà quindi necessario eseguire apt-get update una seconda volta.
In seguito, installate Node.js:
Questo installerà automaticamente anche npm.
Infine, installate il pacchetto build-essential per npm:
Creare un esempio di applicazione Node.js
Per questo esempio, inizieremo creando una directory separata nella radice dei documenti del vostro sito web per ospitare le applicazioni Node.js:
Create il file hello.js in questa directory:
Aggiungete il seguente esempio di contenuto al file:
Salvate e uscite dal file rendendo il file eseguibile:
Installare PM2
Usate npm per installare PM2 tramite il comando seguente:
Avviate quindi l’esempio di script hello.js appena creato con il comando:
Aggiungete PM2 come root agli script di avvio, in modo che si riavvii automaticamente se il server viene riavviato:
Configurare Apache
Per accedere allo script Node.js dal web, bisognerà installare i moduli Apache proxy e proxy_http utilizzando i comandi riportati di seguito:
Al termine dell’installazione riavviate Apache per applicare le modifiche:
Successivamente, sarà necessario regolare le configurazioni del proxy di Apache. Le seguenti direttive devono essere inserite nel blocco di comando VirtualHost nel file di configurazione principale di Apache del sito.
Solitamente, su Ubuntu questo file di configurazione di Apache è /etc/apache2/sites-available/example.com.conf.
La posizione e il nome del file di configurazione di Apache di un sito possono variare.
Modificate questo file con l’editor che preferite, ad esempio utilizzando il seguente comando:
Scorrete il file fino a trovare il blocco di comando VirtualHost, che si presenterà in questo modo:
Aggiungete quindi la dicitura seguente al blocco di comando VirtualHost:
Assicuratevi di inserire queste righe fuori da qualsiasi blocco di comando della directory. Ad esempio:
Salvate le modifiche e uscite dal file. Riavviate quindi Apache per apportare le modifiche:
Dopo aver riavviato Apache, potrete testare l’applicazione visualizzandola in un browser. A questo punto, dovreste visualizzare il seguente messaggio dal file di prova creato in precedenza: