Thelia 2.3:n asentaminen Debian 9:ään
Käytätkö erilaista järjestelmää? Thelia on avoimen lähdekoodin työkalu sähköisen liiketoiminnan verkkosivustojen luomiseen ja PHP:llä kirjoitetun online-sisällön hallintaan. Thelia-lähdekoodi i
Tässä opetusohjelmassa määritämme verkkopalvelimen käänteisellä välityspalvelimella. Käyttämämme sisällönhallintajärjestelmä on Keystone.js, tunnettu verkkosovelluskehys, joka perustuu Express.js:ään. Käänteinen välityspalvelin, jota käytämme, on Nginx, joka on ilmainen ja avoimen lähdekoodin käänteinen välityspalvelin sekä HTTP-palvelin. Käyttämämme tietokanta on MongoDB, NoSQL-dokumenttitietokanta. Tämä edellyttää, että sinulla on verkkotunnus, johon on määritetty tietueet. Jos sinulla ei ole kyseistä sarjaa, mene eteenpäin ja huolehdi siitä ja palaa tähän opetusohjelmaan.
Ensin asennamme Node.js:n, joka on Chrome V8 Javascript -moottoriin perustuva Javascript-tulkki.
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
Seuraavaksi asennamme Nginxin, käänteisen välityspalvelimemme.
sudo apt update
sudo apt install nginx
Tämä päivittää pakettiluettelot ja asentaa Nginxin. Kun asennus on valmis, määritämme solmuprojektimme.
Luo solmuprojektimme. Voit tehdä tämän luomalla uuden kansion.
mkdir website
Sitten luomme package.json
tiedostomme. Voit tehdä tämän suorittamalla npm init
terminaalin, täyttämällä kentät ja yes
vahvistamalla vastaamalla " ". Kun olet luonut package.json
tiedoston, asennamme seuraavat solmumoduulit.
sudo npm install -g generator-keystone
sudo npm install -g yo
Kun ne on ladattu, suorita seuraava.
yo keystone
Täytä pakolliset kentät. Se kysyy sinulta project name
, template engine
, email
ohjauspaneelia ja niin edelleen. Jos et tiedä mitä valita, oletusasetukset ovat kunnossa. Kun olet määrittänyt Keystone-asetuksesi, voimme testata, onko palvelimemme käynnissä kirjoittamalla node keystone
käynnistääksesi sovelluksesi. Oletuksena sovelluksesi on käynnissä localhost
portissa 3000
. Huomaa, että jos sinulla ei ole MongoDB:tä asennettuna, tietokanta ei ole heti käytettävissäsi. Voit oppia asentamaan sen myöhemmin opetusohjelmassa.
Tässä on Keystone.js:n perushakemistoasettelu:
/lib
- Tässä tallennat mukautetut kirjastot ja muut koodit.
/models
- Tässä tallennat sovelluksesi tietokantamallit. KeystoneJS käyttää MongoDB:tä tietokantatoimittajana.
/public
- Tänne staattiset tiedostosi (CSS, JS, kuvat ja niin edelleen) tallennetaan.
/routes/api
- Tänne tallennetaan sovelluksesi API-ohjaimet.
/routes.views
- Sovellusnäkymän ohjaimet tallennetaan tänne.
/templates
- Tänne tallennetaan kaikki sovelluksesi mallitiedostot.
/updates
- Tänne siirtoskriptit tallennetaan.
package.json
- Tämä on npm-määritystiedostosi, jonka generaattori loi meille.
keystone.js
- Pääaloitustiedostomme, suoritamme tämän, kun käynnistämme verkkosivuston.
Kuten aiemmin mainittiin, käyttämämme tietokanta on MongoDB, joka on luotettava NoSQL-dokumenttipohjainen tietokanta. Jos sinulla on jo MongoDB asennettuna, voit ohittaa tämän osion. Jos ei, niin asenna se Ubuntu 16.04:ään seuraavasti.
Tuo mongoDB-paketin julkinen avain.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Luo paketin asentamiseen käytetty luettelotiedosto.
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
Päivitä pakettiluettelosi käyttämällä apt
.
sudo apt update
Asenna lopuksi MongoDB.
sudo apt install mongodb-org -y
Kun tämä asennus on valmis, käynnistä MongoDB.
sudo service mongod start
Tämä käynnistää MongoDB-prosessin portissa 27017
.
MongoDB:tä käytetään koko sovelluksessa ja sitä hyödynnetään malleissamme käyttämämme tiedon, esimerkiksi User
mallin , tallentamiseen . Keystone käyttää sitä tietokantaansa, etkä tällä hetkellä voi käyttää muita tietokantatoimittajia.
Nyt on aika asentaa PM2 (Process Manager 2.) PM2 on prosessinhallinta Node.js-sovelluksille npm-moduulin muodossa. Se tarjoaa helpon tavan hallita sovelluksiasi ja suorittaa niitä taustalla. Koska se on NPM:ssä, meidän tarvitsee vain asentaa se suorittaa seuraava.
sudo npm install pm2 -g
Tämä käskee npm:n asentamaan sen maailmanlaajuisesti, jotta voimme käyttää sitä missä tahansa järjestelmässämme.
Aiemmin suoritimme verkkosovelluksemme kanssa node keystone
. PM2:lla tilanne on hieman erilainen. Suoritamme nyt solmusovelluksemme seuraavalla.
pm2 start keystone.js
Tämä lisää PM2-sovelluksemme prosessiluetteloomme, ja pieni laatikko tulee näkyviin, jotta voit nähdä, että se on todellakin online-tilassa. Huomaa id
prosessillesi merkitty laatikko . Pidä tämä lähellä, sillä tulemme tekemään tähän monia viittauksia myöhemmin.
Nähdäksesi sovelluksesi lokit.
pm2 logs [id]
Jos pm2 logs 0
tämä on esimerkiksi ensimmäinen PM2-sovelluksesi.
Pysäytä verkkosovelluksesi milloin tahansa.
pm2 stop [id]
Poistaaksesi sovelluksesi kokonaan.
pm2 delete [id]
PM2:ssa on jopa valvontakojelauta, jos haluat nähdä joitain sovelluksesi perustilastoja, ja voit käyttää sitä tällä.
pm2 monit
Tämä näyttää joitain perustietoja, kuten RAM-muistin, suorittimen käytön ja käytettävyyden.
PM2:n hieno ominaisuus on watching
. Pohjimmiltaan katselu on sitä, kun PM2 havaitsee automaattisesti muutokset mihin tahansa tiedostoon samassa hakemistossa kuin aloitustiedostosi, ja se käynnistää sovelluksesi automaattisesti uudelleen. Ota se käyttöön käynnistämällä sovellus uudelleen, mutta antamalla sille kellomerkki.
pm2 restart [id] --watch
Jos haluat poistaa katselun käytöstä sen jälkeen, kun se on otettu käyttöön, suorita sama komento uudelleen, jolloin katselu poistetaan käytöstä.
Tässä opetusohjelmassa jätämme katselun pois.
Varmista, että Nginx on asennettu. Jos jostain syystä ei ole, katso yllä olevat vaiheet.
Säädä palomuuriasetuksiasi. Ubuntussa se ufw
on virallinen palomuuri. Oletuksena yhteydet estetään portissa 80
. Meidän on lisättävä poikkeus Nginx on portille 80
, jolla verkkosovelluksemme toimii.
sudo ufw allow 'Nginx HTTP'
Varmista, että Nginx-palvelimesi on käynnissä.
systemctl status nginx
Alle Active
osio, jos näet active (running)
, niin te kaikki asetettu. Jos ei, voit yrittää käynnistää palvelun uudelleen.
systemctl restart nginx
Poista oletusarvoinen Nginx-määritystiedosto.
sudo rm /etc/nginx/sites-available/default
Luo uusi ja soita sille node
.
sudo nano /etc/nginx/sites-available/node
Liitä seuraavat tiedot tiedostoon ja korvaa se example.com
verkkosivustosi verkkotunnuksella.
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";
}
}
Huomaa, että proxy_pass
tarkoittaa IP-osoitetta, jolla Keystone-sovelluksemme toimii paikallisesti, joka on localhost
portissa 3000
.
listen 80
on portti, johon haluamme sovelluksen ohjattavan, mikä tässä tapauksessa on portti 80
.
Sitten meidän on luotava symlink tai symbolinen linkki kansioon nimeltä sites-enabled
. Ero sites-enabled
ja sites-available
on se, että sites-enabled
on todella ladataan nginx.
sudo ln -s /etc/nginx/sites-available/node /etc/nginx/sites-enabled/node
Nyt määritystiedostosi sites-available
on valmis käytettäväksi ja se ladataan osoitteesta sites-enabled
. Ota määritys käyttöön, jotta se astuu voimaan, käynnistämällä Nginx uudelleen.
sudo systemctl restart nginx
Lopuksi käynnistä PM2-sovellus uudelleen
pm2 restart [id]
Nyt voit navigoida verkkotunnukseesi selaimessa, ja näet Welcome to Keystone
näytön, jossa on paneeli, josta voit kirjautua sisään.
Jos näet sen, olet onnistuneesti määrittänyt Node.js-tuotantoverkkopalvelimen. Jos ei, olet saattanut tehdä jonkin vaiheen väärin, ja saatat haluta palata ja seurata jokaista vaihetta huolellisesti.
Voit oppia lisää Nginxistä vierailemalla heidän verkkosivustollaan .
Toivottavasti pidit tästä opetusohjelmasta, ja toivon, että tämä on auttanut sinua määrittämään oman verkkopalvelimesi tuotantoa varten Vultr VPS:ssäsi.
Käytätkö erilaista järjestelmää? Thelia on avoimen lähdekoodin työkalu sähköisen liiketoiminnan verkkosivustojen luomiseen ja PHP:llä kirjoitetun online-sisällön hallintaan. Thelia-lähdekoodi i
Käytätkö erilaista järjestelmää? Microweber on avoimen lähdekoodin vedä ja pudota sisällönhallintajärjestelmä ja verkkokauppa. Microweber-lähdekoodia isännöidään GitHubissa. Tämä opas näyttää sinulle
Käytätkö erilaista järjestelmää? DotCMS on avoimen lähdekoodin, yritystason sisällönhallintajärjestelmä, joka on kirjoitettu Java-kielellä. Se sisältää lähes kaikki tarvittavat ominaisuudet
Käytätkö erilaista järjestelmää? Pagekit 1.0 CMS on kaunis, modulaarinen, laajennettava ja kevyt, ilmainen ja avoimen lähdekoodin sisällönhallintajärjestelmä (CMS), jossa on
Käytätkö erilaista järjestelmää? BigTree CMS 4.2 on nopea ja kevyt, ilmainen ja avoimen lähdekoodin yritystason sisällönhallintajärjestelmä (CMS), jossa on laaja
Käytätkö erilaista järjestelmää? Pagekit on avoimen lähdekoodin CMS, joka on kirjoitettu PHP:llä. Pagekit-lähdekoodia isännöi GitHub. Tämä opas näyttää kuinka asennus tehdään
Käytätkö erilaista järjestelmää? PyroCMS on avoimen lähdekoodin CMS, joka on kirjoitettu PHP:llä. PyroCMS-lähdekoodia isännöidään GitHubissa. Tässä oppaassa käy hyvin läpi koko
Käytätkö erilaista järjestelmää? Subrion 4.1 CMS on tehokas ja joustava avoimen lähdekoodin sisällönhallintajärjestelmä (CMS), joka tuo intuitiivisen ja selkeän sisällön
Käytätkö erilaista järjestelmää? Backdrop CMS 1.8.0 on yksinkertainen ja joustava, mobiiliystävällinen, ilmainen ja avoimen lähdekoodin sisällönhallintajärjestelmä (CMS), jonka avulla voimme
Käytätkö erilaista järjestelmää? Johdanto Roadiz on moderni sisällönhallintajärjestelmä, joka on suunniteltu käsittelemään monenlaisia palveluita. Perustuu Symfonyn komponentteihin ja Doctrine ORM:iin, ts
Käytätkö erilaista järjestelmää? Microweber on avoimen lähdekoodin vedä ja pudota sisällönhallintajärjestelmä ja verkkokauppa. Microweber-lähdekoodia isännöidään GitHubissa. Tämä opas näyttää sinulle
Käytätkö erilaista järjestelmää? Grav on avoimen lähdekoodin kiinteätiedostoinen CMS, joka on kirjoitettu PHP:llä. Gravin lähdekoodia isännöidään julkisesti GitHubissa. Tämä opas näyttää sinulle, kuinka t
Käytätkö erilaista järjestelmää? Grav on avoimen lähdekoodin kiinteätiedostoinen CMS, joka on kirjoitettu PHP:llä. Gravin lähdekoodia isännöidään julkisesti GitHubissa. Tämä opas näyttää sinulle, kuinka t
Käytätkö erilaista järjestelmää? Automad on avoimen lähdekoodin tiedostopohjainen sisällönhallintajärjestelmä (CMS) ja mallipohja, joka on kirjoitettu PHP:llä. Automadin lähdekoodi i
Raneto on ilmainen ja avoimen lähdekoodin tietokanta, joka on rakennettu Node.js:lle ja joka on helppo asentaa ja käyttää sekä helposti hallita. Luokat ja sivut ar
Käytätkö erilaista järjestelmää? Thelia on avoimen lähdekoodin työkalu sähköisen liiketoiminnan verkkosivustojen luomiseen ja PHP:llä kirjoitetun online-sisällön hallintaan. Thelia-lähdekoodi i
Käytätkö erilaista järjestelmää? Lokakuu 1.0 CMS on yksinkertainen ja luotettava, ilmainen ja avoimen lähdekoodin sisällönhallintajärjestelmä (CMS), joka perustuu Laravel-kehykseen
Käytätkö erilaista järjestelmää? ImpressPages CMS 5.0 on yksinkertainen ja tehokas, ilmainen ja avoimen lähdekoodin, käyttäjäystävällinen, MVC-pohjainen sisällönhallintajärjestelmä (CMS)
Käytätkö erilaista järjestelmää? CMS Made Simple 2.2 on joustava ja laajennettava, ilmainen ja avoimen lähdekoodin sisällönhallintajärjestelmä (CMS), joka on älykkäästi suunniteltu
Käytätkö erilaista järjestelmää? Couch CMS on yksinkertainen ja joustava, ilmainen ja avoimen lähdekoodin sisällönhallintajärjestelmä (CMS), jonka avulla web-suunnittelijat voivat suunnitella
Tekoäly ei ole tulevaisuudessa, se tässä nykyisyydessä Tässä blogissa Lue kuinka tekoälysovellukset ovat vaikuttaneet eri sektoreihin.
Oletko myös DDOS-hyökkäysten uhri ja hämmentynyt ehkäisymenetelmistä? Lue tämä artikkeli ratkaistaksesi kysymyksesi.
Olet ehkä kuullut, että hakkerit ansaitsevat paljon rahaa, mutta oletko koskaan miettinyt, kuinka he ansaitsevat tuollaista rahaa? keskustellaan.
Haluatko nähdä Googlen vallankumouksellisia keksintöjä ja kuinka nämä keksinnöt muuttivat jokaisen ihmisen elämää nykyään? Lue sitten blogia nähdäksesi Googlen keksinnöt.
Konsepti itseohjautuvista autoista lähteä tielle tekoälyn avulla on ollut haaveena jo jonkin aikaa. Mutta useista lupauksista huolimatta niitä ei näy missään. Lue tämä blogi saadaksesi lisätietoja…
Kun tiede kehittyy nopeasti ja ottaa haltuunsa suuren osan ponnisteluistamme, myös riskit altistaa itsemme selittämättömälle singulariteetille kasvavat. Lue, mitä singulaarisuus voisi tarkoittaa meille.
Tietojen säilytystavat ovat kehittyneet mahdollisesti Datan syntymästä lähtien. Tämä blogi käsittelee tiedon tallennuksen kehitystä infografian pohjalta.
Blogista saat tietää Big Data -arkkitehtuurin eri kerroksista ja niiden toiminnoista yksinkertaisimmalla tavalla.
Tässä digitaalisessa maailmassa kodin älylaitteista on tullut tärkeä osa elämää. Tässä on muutamia älykkäiden kodin laitteiden hämmästyttäviä etuja, joiden avulla ne tekevät elämästämme elämisen arvoista ja yksinkertaisempaa.
Apple julkaisi äskettäin macOS Catalina 10.15.4 -lisäpäivityksen ongelmien korjaamiseksi, mutta näyttää siltä, että päivitys aiheuttaa lisää ongelmia, jotka johtavat mac-koneiden tiilikaamiseen. Lue tämä artikkeli saadaksesi lisätietoja