Com instal·lar Thelia 2.3 a Debian 9
Utilitzeu un sistema diferent? Thelia és una eina de codi obert per crear llocs web de negocis electrònics i gestionar contingut en línia escrit en PHP. Codi font de Thelia i
En aquest tutorial, configurarem un servidor web amb un servidor intermediari invers. El CMS que farem servir és Keystone.js, un marc d'aplicacions web conegut basat en Express.js. El servidor intermediari invers que utilitzarem és Nginx, que és un servidor intermediari invers gratuït i de codi obert, així com un servidor HTTP. La base de dades que farem servir és MongoDB, una base de dades de documents NoSQL. Això requerirà que tingueu un domini amb registres configurats. Si no teniu aquest conjunt, seguiu endavant i cuideu-lo i torneu a aquest tutorial.
Primer, instal·larem Node.js, que és un intèrpret de Javascript basat en el motor Chrome V8 Javascript.
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
A continuació, instal·larem Nginx, el nostre servidor intermediari invers.
sudo apt update
sudo apt install nginx
Això actualitzarà les llistes de paquets i instal·larà Nginx. Un cop feta la instal·lació, configurarem el nostre projecte de nodes.
Creeu el nostre projecte de nodes. Per fer-ho, només cal que creeu una nova carpeta.
mkdir website
Aleshores, crearem el nostre package.json
fitxer. Per fer-ho, només cal que executeu npm init
el vostre terminal, ompliu els camps i responeu " yes
" per confirmar. Un cop hàgiu creat el package.json
fitxer, instal·larem els mòduls de nodes següents.
sudo npm install -g generator-keystone
sudo npm install -g yo
Un cop s'hagi acabat de descarregar, executeu el següent.
yo keystone
Ompliu els camps obligatoris. Et demanarà el project name
, el template engine
, email
el tauler de control, etc. Si no sabeu què seleccionar, els valors predeterminats estaran bé. Després d'haver configurat la configuració de keystone, podem provar per veure si el nostre servidor s'està executant escrivint node keystone
per iniciar la vostra aplicació. De manera predeterminada, la vostra aplicació s'executarà a localhost
, al port 3000
. Tingueu en compte que si no teniu instal·lat MongoDB, una base de dades no estarà disponible immediatament. Podeu aprendre com instal·lar-lo més endavant al tutorial.
Aquí teniu la disposició bàsica del directori per a Keystone.js:
/lib
- Aquí és on emmagatzemareu les vostres biblioteques personalitzades i altres codis.
/models
- Aquí és on emmagatzemareu els models de base de dades de la vostra aplicació. KeystoneJS utilitza MongoDB com a proveïdor de bases de dades.
/public
- Aquí és on s'emmagatzemaran els vostres fitxers estàtics (CSS, JS, imatges, etc.).
/routes/api
- Aquí és on s'emmagatzemaran els controladors de l'API de la vostra aplicació.
/routes.views
- Els controladors de visualització de l'aplicació s'emmagatzemaran aquí.
/templates
- Aquí és on s'emmagatzemaran tots els fitxers de plantilla de la vostra aplicació.
/updates
- Aquí és on s'emmagatzemaran els vostres scripts de migració.
package.json
- Aquest és el vostre fitxer de configuració npm que el generador ens ha generat.
keystone.js
- El nostre fitxer d'inici principal, ho executem quan iniciem el lloc web.
Com s'ha esmentat anteriorment, la nostra base de dades que farem servir és MongoDB, que és una base de dades NoSQL fiable orientada a documents. Si ja teniu instal·lat MongoDB, podeu ometre aquesta secció. Si no, aquí teniu com instal·lar-lo a Ubuntu 16.04.
Importeu la clau pública utilitzada per al paquet mongoDB.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Creeu el fitxer de llista utilitzat per instal·lar el paquet.
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
Actualitzeu les vostres llistes de paquets amb apt
.
sudo apt update
Finalment, instal·leu MongoDB.
sudo apt install mongodb-org -y
Quan acabi aquesta instal·lació, inicieu MongoDB.
sudo service mongod start
Això iniciarà el procés de MongoDB al port 27017
.
MongoDB s'utilitzarà a tota l'aplicació i s'utilitzarà per emmagatzemar informació que fem servir per als nostres models, per exemple, un User
model. Keystone l'utilitza com a base de dades preferida i, en aquest moment, no podeu utilitzar altres proveïdors de bases de dades.
Ara és el moment d'instal·lar PM2 (Process Manager 2.) PM2 és un gestor de processos per a aplicacions Node.js, en forma de mòdul npm. Proporciona una manera senzilla de gestionar les vostres aplicacions i executar-les en segon pla. Com que està a NPM, tot el que hem de fer per instal·lar-lo és executar el següent.
sudo npm install pm2 -g
Això indica a npm que l'instal·li globalment, de manera que el podem utilitzar a qualsevol lloc del nostre sistema.
Abans, vam executar la nostra aplicació web amb node keystone
. Amb PM2, és una mica diferent. Ara executem la nostra aplicació de nodes amb el següent.
pm2 start keystone.js
Això afegirà la nostra aplicació PM2 a la nostra llista de processos i es mostrarà un petit quadre perquè pugueu veure que està realment en línia. Observeu la casella etiquetada id
per al vostre procés. Mantingueu-ho a prop, ja que més endavant farem moltes referències a això.
Per veure els registres de la vostra aplicació.
pm2 logs [id]
Per exemple, pm2 logs 0
si aquesta és la vostra primera aplicació PM2.
Per aturar la vostra aplicació web en qualsevol moment.
pm2 stop [id]
Per eliminar completament la vostra aplicació.
pm2 delete [id]
PM2 fins i tot té un tauler de control si voleu veure algunes estadístiques bàsiques de la vostra aplicació, i podeu accedir-hi amb això.
pm2 monit
Això mostrarà informació bàsica com ara l'ús de la memòria RAM, l'ús de la CPU i el temps de funcionament.
Una gran característica que ofereix PM2 és watching
. En essència, l'observació és quan PM2 detecta automàticament els canvis en qualsevol dels fitxers del mateix directori que el vostre fitxer d'inici i reiniciarà automàticament l'aplicació. Per activar-lo, només cal que reinicieu l'aplicació, però passeu-li una marca de rellotge.
pm2 restart [id] --watch
Per desactivar la visualització després d'haver-la habilitat, només cal que torneu a executar la mateixa ordre i la visualització es desactivarà.
En aquest tutorial, deixarem de vigilar.
Assegureu-vos que teniu Nginx instal·lat. Si per algun motiu no ho és, feu referència als passos anteriors.
Ajusteu la configuració del vostre tallafoc. A Ubuntu, ufw
és el tallafoc oficial. Per defecte, les connexions estan bloquejades al port 80
. Hem d'afegir una excepció per a Nginx al port 80
, on s'executarà la nostra aplicació web.
sudo ufw allow 'Nginx HTTP'
Verifiqueu que el vostre servidor Nginx s'està executant.
systemctl status nginx
Sota la Active
secció, si veus active (running)
, ja estàs a punt. Si no, podeu provar de reiniciar el servei.
systemctl restart nginx
Suprimiu el fitxer de configuració predeterminat de Nginx.
sudo rm /etc/nginx/sites-available/default
Creeu-ne un de nou i simplement truqueu-lo node
.
sudo nano /etc/nginx/sites-available/node
Enganxeu el següent al fitxer i substituïu example.com
-lo pel domini del vostre lloc 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";
}
}
Tingueu en compte que el proxy_pass
denota la IP on s'executa la nostra aplicació Keystone de manera local, que es troba localhost
al port 3000
.
listen 80
és el port al qual volem que es dirigeixi l'aplicació, que en aquest cas és port 80
.
Aleshores, hem de crear un enllaç simbòlic o enllaç simbòlic a una carpeta anomenada sites-enabled
. La diferència entre sites-enabled
i sites-available
és que sites-enabled
Nginx carrega realment.
sudo ln -s /etc/nginx/sites-available/node /etc/nginx/sites-enabled/node
Ara el vostre fitxer de configuració sites-available
estarà a punt per utilitzar-lo i es carregarà des de sites-enabled
. Per aplicar la configuració perquè tingui efecte, simplement reinicieu Nginx.
sudo systemctl restart nginx
Finalment, reinicieu l'aplicació PM2
pm2 restart [id]
Ara podeu navegar al vostre domini en un navegador i veureu una Welcome to Keystone
pantalla amb un panell per iniciar sessió.
Si el veieu, vol dir que heu configurat correctament un servidor web de producció Node.js. Si no és així, és possible que hàgiu fet un pas incorrectament i potser voldreu tornar enrere i seguir cada pas amb cura.
Podeu obtenir més informació sobre Nginx visitant el seu lloc web .
Espero que us hagi agradat aquest tutorial i espero que us hagi ajudat a configurar el vostre propi servidor web per a la producció al vostre VPS Vultr.
Utilitzeu un sistema diferent? Thelia és una eina de codi obert per crear llocs web de negocis electrònics i gestionar contingut en línia escrit en PHP. Codi font de Thelia i
Utilitzeu un sistema diferent? Microweber és un CMS d'arrossegar i deixar anar de codi obert i una botiga en línia. El codi font de Microweber està allotjat a GitHub. Aquesta guia us mostrarà
Utilitzeu un sistema diferent? Microweber és un CMS d'arrossegar i deixar anar de codi obert i una botiga en línia. El codi font de Microweber està allotjat a GitHub. Aquesta guia us mostrarà
Utilitzeu un sistema diferent? DotCMS és un sistema de gestió de continguts de codi obert i de grau empresarial escrit en Java. Conté gairebé totes les funcions necessàries t
Utilitzeu un sistema diferent? Pagekit 1.0 CMS és un sistema de gestió de continguts (CMS) bonic, modular, extensible i lleuger, gratuït i de codi obert amb
Utilitzeu un sistema diferent? BigTree CMS 4.2 és un sistema de gestió de continguts (CMS) ràpid i lleuger, gratuït i de codi obert, amb una àmplia
Utilitzeu un sistema diferent? Pagekit és un CMS de codi obert escrit en PHP. El codi font de Pagekit està allotjat a GitHub. Aquesta guia us mostrarà com instal·lar-lo
Utilitzeu un sistema diferent? PyroCMS és un CMS de codi obert escrit en PHP. El codi font de PyroCMS està allotjat a GitHub. En aquesta guia passeja bé per tot
Utilitzeu un sistema diferent? Subrion 4.1 CMS és un sistema de gestió de continguts (CMS) de codi obert potent i flexible que ofereix un contingut intuïtiu i clar.
Utilitzeu un sistema diferent? Backdrop CMS 1.8.0 és un sistema de gestió de continguts (CMS) senzill i flexible, adaptat per a mòbils, gratuït i de codi obert que ens permet
Utilitzeu un sistema diferent? Introducció Roadiz és un CMS modern dissenyat per gestionar molts tipus de serveis. Basat en components Symfony i Doctrine ORM, i
Utilitzeu un sistema diferent? Microweber és un CMS d'arrossegar i deixar anar de codi obert i una botiga en línia. El codi font de Microweber està allotjat a GitHub. Aquesta guia us mostrarà
Utilitzeu un sistema diferent? Grav és un CMS de fitxer pla de codi obert escrit en PHP. El codi font de Grav està allotjat públicament a GitHub. Aquesta guia us mostrarà com t
Utilitzeu un sistema diferent? Grav és un CMS de fitxer pla de codi obert escrit en PHP. El codi font de Grav està allotjat públicament a GitHub. Aquesta guia us mostrarà com t
Utilitzeu un sistema diferent? Automad és un sistema de gestió de continguts (CMS) basat en fitxers de codi obert i un motor de plantilles escrit en PHP. El codi font d'Automad i
Raneto és una base de coneixement gratuïta i de codi obert, basada en Node.js que és fàcil de configurar i utilitzar, així com fàcil d'administrar. Categories i pàgines ar
Utilitzeu un sistema diferent? Thelia és una eina de codi obert per crear llocs web de negocis electrònics i gestionar contingut en línia escrit en PHP. Codi font de Thelia i
Utilitzeu un sistema diferent? Octubre 1.0 CMS és un sistema de gestió de continguts (CMS) senzill i fiable, gratuït i de codi obert basat en el framework Laravel
Utilitzeu un sistema diferent? ImpressPages CMS 5.0 és un sistema de gestió de continguts (CMS) senzill i eficaç, gratuït i de codi obert, fàcil d'utilitzar, basat en MVC.
Utilitzeu un sistema diferent? CMS Made Simple 2.2 és un sistema de gestió de continguts (CMS) flexible i extensible, gratuït i de codi obert dissenyat intel·ligentment per b
La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.
També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.
Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.
Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.
El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...
A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.
Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.
Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.
En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.
Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació