Installazione di Fuel CMS su Ubuntu 16.04 LTS
Usi un sistema diverso? Fuel CMS è un sistema di gestione dei contenuti basato su CodeIgniter. Il suo codice sorgente è ospitato su GitHub. Questa guida ti mostrerà come t
In questo tutorial, configureremo un server Web con un proxy inverso. Il CMS che utilizzeremo è Keystone.js, un noto framework di applicazioni Web basato su Express.js. Il proxy inverso che useremo è Nginx, che è un proxy inverso gratuito e open source, nonché un server HTTP. Il database che useremo è MongoDB, un database di documenti NoSQL. Ciò richiederà di avere un dominio con i record impostati. Se non hai questo set, vai avanti e prenditi cura di te, e torna a questo tutorial.
Innanzitutto installeremo Node.js, che è un interprete Javascript basato sul motore Javascript Chrome V8.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential
Successivamente, installeremo Nginx, il nostro proxy inverso.
sudo apt update
sudo apt install nginx
Ciò aggiornerà gli elenchi dei pacchetti e installerà Nginx. Al termine dell'installazione, configureremo il nostro progetto nodo.
Crea il nostro progetto nodo. Per fare ciò, basta creare una nuova cartella.
mkdir website
Quindi, creeremo il nostro package.json
file. Per farlo, esegui semplicemente il npm init
tuo terminale, compila i campi e rispondi " yes
" per confermare. Dopo aver creato il package.json
file, installeremo i seguenti moduli di nodo.
sudo npm install -g generator-keystone
sudo npm install -g yo
Al termine del download, esegui quanto segue.
yo keystone
Compila i campi richiesti. Ti verrà chiesto per la project name
, la template engine
, email
per il pannello di controllo, e così via. Se non sai cosa selezionare, le impostazioni predefinite andranno bene. Dopo aver configurato l'impostazione keystone, possiamo verificare se il nostro server è in esecuzione digitando node keystone
per avviare l'applicazione. Per impostazione predefinita, l'applicazione sarà in esecuzione localhost
, sulla porta 3000
. Nota che se MongoDB non è installato, un database non sarà immediatamente disponibile. Puoi imparare come installarlo più avanti nel tutorial.
Ecco il layout di directory di base per Keystone.js:
/lib
- Qui è dove memorizzerai le tue librerie personalizzate e altro codice.
/models
- Qui è dove verranno archiviati i modelli di database dell'applicazione. KeystoneJS utilizza MongoDB come provider di database.
/public
- Qui vengono archiviati i tuoi file statici (CSS, JS, immagini e così via).
/routes/api
- Qui è dove verranno archiviati i controller API della tua applicazione.
/routes.views
- I controller di visualizzazione dell'applicazione verranno memorizzati qui.
/templates
- Qui è dove verranno archiviati tutti i file modello dell'applicazione.
/updates
- Qui vengono archiviati gli script di migrazione.
package.json
- Questo è il tuo file di configurazione npm che il generatore ha generato per noi.
keystone.js
- Il nostro file di avvio principale, lo eseguiamo all'avvio del sito Web.
Come accennato in precedenza, il nostro database che useremo è MongoDB, che è un database NoSQL affidabile, orientato ai documenti. Se hai già installato MongoDB, puoi saltare questa sezione. In caso contrario, ecco come installarlo su Ubuntu 16.04.
Importa la chiave pubblica utilizzata per il pacchetto mongoDB.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Creare il file di elenco utilizzato per installare il pacchetto.
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Aggiorna gli elenchi dei pacchetti utilizzando apt
.
sudo apt update
Infine, installa MongoDB.
sudo apt install mongodb-org -y
Al termine dell'installazione, avviare MongoDB.
sudo service mongod start
Ciò avvierà il processo MongoDB sulla porta 27017
.
MongoDB verrà utilizzato in tutta l'applicazione e verrà utilizzato per archiviare le informazioni che utilizziamo per i nostri modelli, ad esempio un User
modello. Keystone lo utilizza come database preferito e al momento non è possibile utilizzare altri fornitori di database.
Ora è il momento di installare PM2 (Process Manager 2.) PM2 è un gestore dei processi per le applicazioni Node.js, sotto forma di un modulo npm. Fornisce un modo semplice per gestire le applicazioni ed eseguirle in background. Poiché è in NPM, tutto ciò che dobbiamo fare per installarlo è eseguire quanto segue.
sudo npm install pm2 -g
Questo dice a npm di installarlo a livello globale, quindi possiamo usarlo ovunque nel nostro sistema.
In precedenza, abbiamo eseguito la nostra applicazione Web con node keystone
. Con PM2, è un po 'diverso. Ora eseguiamo la nostra app nodo con il seguente.
pm2 start keystone.js
Ciò aggiungerà la nostra applicazione PM2 al nostro elenco di processi e verrà visualizzata una piccola casella in modo da poter vedere che è effettivamente online. Si noti la casella etichettata id
per il processo. Tenetelo vicino, poiché faremo molti riferimenti a questo più avanti.
Per visualizzare i registri per l'applicazione.
pm2 logs [id]
Ad esempio, pm2 logs 0
se questa è la tua prima applicazione PM2.
Per interrompere l'applicazione Web in qualsiasi momento.
pm2 stop [id]
Per eliminare completamente l'applicazione.
pm2 delete [id]
PM2 ha anche una dashboard di monitoraggio se vuoi vedere alcune statistiche di base per la tua applicazione, e puoi accedervi con questo.
pm2 monit
Questo mostrerà alcune informazioni di base come l'utilizzo della RAM, l'utilizzo della CPU e il tempo di attività.
Una grande caratteristica che offre PM2 è watching
. In sostanza, guardare è quando PM2 rileva automaticamente le modifiche a uno qualsiasi dei file nella stessa directory del file di avvio e riavvierà automaticamente l'applicazione. Per abilitarlo, riavvia semplicemente l'applicazione, ma passale un flag di controllo.
pm2 restart [id] --watch
Per disabilitare la visione dopo che è stata abilitata, è sufficiente eseguire nuovamente lo stesso comando e la visione sarà disabilitata.
In questo tutorial, lasceremo a guardare fuori.
Assicurati di aver installato Nginx. Se per qualche motivo non lo è, fare riferimento ai passaggi precedenti.
Modifica le impostazioni del firewall. Su Ubuntu ufw
è il firewall ufficiale. Per impostazione predefinita, le connessioni sono bloccate sulla porta 80
. Dobbiamo aggiungere un'eccezione per Nginx sulla porta 80
, sulla quale verrà eseguita la nostra applicazione Web.
sudo ufw allow 'Nginx HTTP'
Verifica che il tuo server Nginx sia in esecuzione.
systemctl status nginx
Sotto la Active
sezione, se vedi active (running)
, sei pronto. In caso contrario, puoi provare a riavviare il servizio.
systemctl restart nginx
Elimina il file di configurazione Nginx predefinito.
sudo rm /etc/nginx/sites-available/default
Creane uno nuovo e chiamalo semplicemente node
.
sudo nano /etc/nginx/sites-available/node
Incolla quanto segue nel file e sostituiscilo example.com
con il dominio del tuo sito web.
listen 80;
server_name example.com;
location / {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_pass "http://127.0.0.1:3000";
}
}
Si noti che proxy_pass
indica l'IP su cui è localhost
in esecuzione la nostra app Keystone localmente, che è sulla porta 3000
. listen 80
è la porta a cui vogliamo indirizzare l'app, che in questo caso è la porta 80
.
Quindi, dobbiamo creare un collegamento simbolico o simbolico a una cartella chiamata sites-enabled
. La differenza tra sites-enabled
e sites-available
è che sites-enabled
viene effettivamente caricata da Nginx.
sudo ln -s /etc/nginx/sites-available/node /etc/nginx/sites-enabled/node
Ora il tuo file di configurazione sites-available
sarà pronto per l'uso e verrà caricato da sites-enabled
. Per applicare la configurazione in modo che abbia effetto, è sufficiente riavviare Nginx.
sudo systemctl restart nginx
Infine, riavvia l'applicazione PM2
pm2 restart [id]
Ora puoi navigare nel tuo dominio in un browser e vedrai una Welcome to Keystone
schermata, con un pannello per il login.
Se lo vedi, hai impostato correttamente un server Web di produzione Node.js. In caso contrario, potresti aver fatto un passaggio in modo errato e potresti voler tornare indietro e seguire attentamente ogni passaggio.
Puoi saperne di più su Nginx visitando il loro sito Web .
Spero che questo tutorial ti sia piaciuto e spero che questo ti abbia aiutato a configurare il tuo server web per la produzione sul tuo VPS Vultr.
Usi un sistema diverso? Fuel CMS è un sistema di gestione dei contenuti basato su CodeIgniter. Il suo codice sorgente è ospitato su GitHub. Questa guida ti mostrerà come t
Usi un sistema diverso? Couch CMS è un sistema di gestione dei contenuti (CMS) semplice e flessibile, gratuito e open source che consente ai web designer di progettare
Usi un sistema diverso? Subrion 4.1 CMS è un sistema di gestione dei contenuti (CMS) open source potente e flessibile che offre un contenuto intuitivo e chiaro
Usi un sistema diverso? Couch CMS è un sistema di gestione dei contenuti (CMS) semplice e flessibile, gratuito e open source che consente ai web designer di progettare
Usi un sistema diverso? WonderCMS è un file CMS open source, veloce e di piccole dimensioni scritto in PHP. Il codice sorgente di WonderCMS è ospitato su Github. Questa guida sarà
Usi un sistema diverso? Neos è una piattaforma di applicazioni di contenuto con un CMS e un framework applicativo al suo interno. Questa guida ti mostrerà come installare
Usi un sistema diverso? Directus 6.4 CMS è un sistema di gestione dei contenuti senza testa (CMS) potente e flessibile, gratuito e open source che fornisce agli sviluppatori
Usi un sistema diverso? BigTree CMS 4.2 è un sistema di gestione dei contenuti (CMS) rapido e leggero, gratuito e open source di livello aziendale con
Usi un sistema diverso? Craft CMS è un CMS open source scritto in PHP. Il codice sorgente di Craft CMS è ospitato su GitHub. Questa guida ti mostrerà come installare
Usi un sistema diverso? ImpressPages CMS 5.0 è un sistema di gestione dei contenuti (CMS) semplice ed efficace, gratuito e open source, intuitivo, basato su MVC
Bolt è un CMS open source scritto in PHP. Il codice sorgente di Bolts è ospitato su GitHub. Questa guida ti mostrerà come installare Bolt CMS su un nuovo CentOS 7 Vult
Usi un sistema diverso? Automad è un sistema di gestione dei contenuti (CMS) basato su file open source e un motore di template scritto in PHP. Il codice sorgente di Automad i
Usi un sistema diverso? Directus 6.4 CMS è un sistema di gestione dei contenuti senza testa (CMS) potente e flessibile, gratuito e open source che fornisce agli sviluppatori
Usi un sistema diverso? ProcessWire CMS 3.0 è un sistema di gestione dei contenuti (CMS) semplice, flessibile e potente, gratuito e open source. ProcessWire CMS 3.
Usi un sistema diverso? TYPO3 è un sistema di gestione dei contenuti aziendali gratuito e open source. È scritto in PHP e utilizza MySQL per archiviare i suoi dati. TYPO
Usi un sistema diverso? Backdrop CMS 1.8.0 è un sistema di gestione dei contenuti (CMS) semplice e flessibile, ottimizzato per dispositivi mobili, gratuito e open source che ci consente
Usi un sistema diverso? Anchor CMS è un motore di blog Content Management System (CMS) super semplice ed estremamente leggero, gratuito e open source
Usi un sistema diverso? Anchor è un blog CMS open source leggero scritto in PHP. Il codice sorgente delle ancore è ospitato su GitHub. Questa guida ti mostrerà ho
Usi un sistema diverso? Microweber è un drag and drop open source CMS e negozio online. Il codice sorgente di Microweber è ospitato su GitHub. Questa guida ti mostrerà
Usi un sistema diverso? Thelia è uno strumento open source per la creazione di siti Web di e-business e la gestione di contenuti online, scritto in PHP. Codice sorgente Thelia i
Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane
ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.
Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+
Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.
Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più
13 strumenti commerciali per l'estrazione dei dati dai Big Data
Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true
Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.
Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1
L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.