A Thelia 2.3 telepítése Debian 9 rendszeren
Más rendszert használ? A Thelia egy nyílt forráskódú eszköz e-üzleti webhelyek létrehozására és PHP-ben írt online tartalmak kezelésére. Thelia forráskód i
Ebben az oktatóanyagban egy webszervert állítunk be fordított proxyval. Az általunk használt CMS a Keystone.js, egy jól ismert, Express.js-en alapuló webalkalmazás-keretrendszer. Az általunk használt fordított proxy az Nginx, amely egy ingyenes és nyílt forráskódú fordított proxy, valamint egy HTTP-kiszolgáló. Az általunk használt adatbázis a MongoDB, egy NoSQL dokumentumadatbázis. Ehhez be kell állítani egy domaint rekordokkal. Ha nem rendelkezik ezzel a készlettel, gondoskodjon róla, és térjen vissza ehhez az oktatóanyaghoz.
Először telepítjük a Node.js-t, amely a Chrome V8 Javascript motoron alapuló Javascript-értelmezés.
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
Ezután telepítjük az Nginx-et, a fordított proxyt.
sudo apt update
sudo apt install nginx
Ez frissíti a csomaglistákat, és telepíti az Nginx-et. A telepítés után beállítjuk a csomóponti projektünket.
Hozd létre a csomópont-projektünket. Ehhez egyszerűen hozzon létre egy új mappát.
mkdir website
Ezután létrehozzuk a package.json
fájlunkat. Ehhez egyszerűen futtassa npm init
a terminálját, töltse ki a mezőket, és yes
a megerősítéshez válaszoljon " ". A package.json
fájl létrehozása után telepítjük a következő csomópont modulokat.
sudo npm install -g generator-keystone
sudo npm install -g yo
Miután befejezte a letöltést, futtassa a következőt.
yo keystone
Töltse ki a kötelező mezőket. Kérni fogja a project name
, a template engine
, email
a vezérlőpulthoz stb. Ha nem tudja, mit válasszon, akkor az alapértelmezett beállítások rendben lesznek. Miután konfigurálta a trapéztorzítás beállítását, node keystone
az alkalmazás elindításához gépelve tesztelhetjük, hogy fut-e a szerverünk . Alapértelmezés szerint az alkalmazás a következőn fog futni: localhost
, porton 3000
. Vegye figyelembe, hogy ha nincs telepítve a MongoDB, akkor az adatbázis nem lesz azonnal elérhető az Ön számára. Az oktatóanyagból később megtudhatja, hogyan telepítheti.
Íme a Keystone.js alapvető könyvtárelrendezése:
/lib
- Itt tárolhatja egyéni könyvtárait és egyéb kódjait.
/models
- Itt tárolhatja az alkalmazás adatbázis-modelljeit. A KeystoneJS a MongoDB-t használja adatbázis-szolgáltatóként.
/public
- Ez az a hely, ahol a statikus fájlok (CSS, JS, képek és így tovább) tárolódnak.
/routes/api
- Itt lesznek tárolva az alkalmazás API-vezérlői.
/routes.views
- Az alkalmazásnézet-vezérlők itt lesznek tárolva.
/templates
- Ez az a hely, ahol az alkalmazás összes sablonfájlja tárolódik.
/updates
- Ez az a hely, ahol a migrációs szkriptek tárolódnak.
package.json
- Ez az Ön npm konfigurációs fájlja, amelyet a generátor generált nekünk.
keystone.js
- A fő indítófájlunk, ezt a weboldal indításakor futtatjuk.
Mint korábban említettük, az általunk használt adatbázisunk a MongoDB, amely egy megbízható NoSQL, dokumentum-orientált adatbázis. Ha történetesen már telepítette a MongoDB-t, kihagyhatja ezt a részt. Ha nem, akkor a következőképpen telepítheti az Ubuntu 16.04-re.
Importálja a mongoDB csomaghoz használt nyilvános kulcsot.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Hozza létre a csomag telepítéséhez használt listafájlt.
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
Frissítse csomaglistáit a segítségével apt
.
sudo apt update
Végül telepítse a MongoDB-t.
sudo apt install mongodb-org -y
Amikor a telepítés befejeződött, indítsa el a MongoDB-t.
sudo service mongod start
Ez elindítja a MongoDB folyamatot a porton 27017
.
A MongoDB-t az egész alkalmazásban fogják használni, és a modelljeinkhez használt információk, például egy User
modell tárolására használják . A Keystone a választott adatbázisaként használja, és jelenleg nem használhat más adatbázis-szállítókat.
Most itt az ideje telepíteni a PM2-t (Process Manager 2.) A PM2 egy folyamatkezelő Node.js alkalmazásokhoz, npm modul formájában. Egyszerű módot biztosít az alkalmazások kezelésére és a háttérben való futtatására. Mivel NPM-ben van, csak a következőt kell tennünk a telepítéséhez.
sudo npm install pm2 -g
Ez azt mondja az npm-nek, hogy globálisan telepítse, így a rendszerünkben bárhol használhatjuk.
Korábban webalkalmazásunkat a következővel futtattuk node keystone
. A PM2-vel kicsit más a helyzet. Most futtatjuk a csomópont-alkalmazásunkat a következőkkel.
pm2 start keystone.js
Ezzel hozzáadjuk a PM2 alkalmazásunkat a folyamatlistánkhoz, és megjelenik egy kis doboz, amelyből láthatja, hogy valóban online van. Figyelje id
meg a folyamathoz tartozó dobozt . Tartsa ezt közel, mert a későbbiekben sok utalást fogunk tenni erre.
Az alkalmazás naplóinak megtekintéséhez.
pm2 logs [id]
Például, pm2 logs 0
ha ez az első PM2 alkalmazása.
A webalkalmazás bármikori leállításához.
pm2 stop [id]
Az alkalmazás teljes törléséhez.
pm2 delete [id]
A PM2-nek még egy felügyeleti műszerfala is van, ha szeretné látni az alkalmazásának alapvető statisztikáit, és ezzel elérheti.
pm2 monit
Ez megmutat néhány alapvető információt, például a RAM-használatot, a CPU-használatot és az üzemidőt.
A PM2 nagyszerű funkciója a watching
. Lényegében a figyelés az, amikor a PM2 automatikusan észleli a változásokat a kezdőfájllal ugyanabban a könyvtárban lévő fájlokban, és automatikusan újraindítja az alkalmazást. Az engedélyezéséhez egyszerűen indítsa újra az alkalmazást, de adjon át neki egy figyelőjelzőt.
pm2 restart [id] --watch
A figyelés letiltásához az engedélyezés után egyszerűen futtassa újra ugyanazt a parancsot, és a figyelés le lesz tiltva.
Ebben az oktatóanyagban abbahagyjuk a figyelést.
Győződjön meg arról, hogy az Nginx telepítve van. Ha valamilyen okból nem, tekintse meg a fenti lépéseket.
Módosítsa a tűzfal beállításait. Az Ubuntu ufw
a hivatalos tűzfal. Alapértelmezés szerint a kapcsolatok a porton blokkolva vannak 80
. Kivételt kell hozzáadnunk az Nginx on porthoz 80
, amelyen webalkalmazásunk futni fog.
sudo ufw allow 'Nginx HTTP'
Ellenőrizze, hogy az Nginx szerver fut-e.
systemctl status nginx
A Active
szakasz alatt, ha a ikont látod active (running)
, akkor minden készen áll. Ha nem, akkor megpróbálhatja újraindítani a szolgáltatást.
systemctl restart nginx
Törölje az alapértelmezett Nginx konfigurációs fájlt.
sudo rm /etc/nginx/sites-available/default
Hozzon létre egy újat, és egyszerűen hívja fel node
.
sudo nano /etc/nginx/sites-available/node
Illessze be a következőt a fájlba, és cserélje example.com
ki a webhely domainjére.
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";
}
}
Vegye figyelembe, hogy a proxy_pass
Keystone alkalmazásunk helyi IP-címét jelöli, amely localhost
a porton van 3000
.
listen 80
az a port, amelyre az alkalmazást irányítani szeretnénk, ami jelen esetben a port 80
.
Ezután létre kell hoznunk egy szimbolikus hivatkozást a mappához sites-enabled
. A sites-enabled
és sites-available
a közötti különbség az , hogy sites-enabled
valójában az Nginx tölti be.
sudo ln -s /etc/nginx/sites-available/node /etc/nginx/sites-enabled/node
Most a konfigurációs fájlja sites-available
készen áll a használatra, és innen töltődik be sites-enabled
. A konfiguráció alkalmazásához, hogy az életbe lépjen, egyszerűen indítsa újra az Nginxet.
sudo systemctl restart nginx
Végül indítsa újra a PM2 alkalmazást
pm2 restart [id]
Most egy böngészőben navigálhat a domainjére, és megjelenik egy Welcome to Keystone
képernyő, amelyen egy panel található a bejelentkezéshez.
Ha látja, akkor sikeresen beállította a Node.js éles webkiszolgálót. Ha nem, akkor lehet, hogy egy lépést rosszul hajtott végre, és érdemes visszamenni, és gondosan követni az egyes lépéseket.
Ha többet szeretne megtudni az Nginxről, látogassa meg webhelyüket .
Remélem, hogy tetszett ez az oktatóanyag, és remélem, hogy ez segített beállítani saját webszerverét a Vultr VPS-en való termeléshez.
Más rendszert használ? A Thelia egy nyílt forráskódú eszköz e-üzleti webhelyek létrehozására és PHP-ben írt online tartalmak kezelésére. Thelia forráskód i
Más rendszert használ? A Microweber egy nyílt forráskódú drag and drop CMS és online bolt. A Microweber forráskódja a GitHubon található. Ez az útmutató megmutatja neked
Más rendszert használ? A Microweber egy nyílt forráskódú drag and drop CMS és online bolt. A Microweber forráskódja a GitHubon található. Ez az útmutató megmutatja neked
Más rendszert használ? A DotCMS egy nyílt forráskódú, vállalati szintű, Java nyelven írt tartalomkezelő rendszer. Szinte minden szükséges funkciót tartalmaz t
Más rendszert használ? A Pagekit 1.0 CMS egy gyönyörű, moduláris, bővíthető és könnyű, ingyenes és nyílt forráskódú tartalomkezelő rendszer (CMS)
Más rendszert használ? A BigTree CMS 4.2 egy gyors és könnyű, ingyenes és nyílt forráskódú, vállalati szintű tartalomkezelő rendszer (CMS), amely kiterjedt
Más rendszert használ? A Pagekit egy PHP nyelven írt nyílt forráskódú CMS. A Pagekit forráskódja a GitHubon található. Ez az útmutató megmutatja, hogyan kell telepíteni
Más rendszert használ? A PyroCMS egy PHP nyelven írt nyílt forráskódú CMS. A PyroCMS forráskódja a GitHubon található. Ebben az útmutatóban jól járja végig az egészet
Más rendszert használ? A Subrion 4.1 CMS egy hatékony és rugalmas nyílt forráskódú tartalomkezelő rendszer (CMS), amely intuitív és világos tartalmat biztosít.
Más rendszert használ? A Backdrop CMS 1.8.0 egy egyszerű és rugalmas, mobilbarát, ingyenes és nyílt forráskódú tartalomkezelő rendszer (CMS), amely lehetővé teszi
Más rendszert használ? Bevezetés A Roadiz egy modern CMS, amelyet számos szolgáltatás kezelésére terveztek. A Symfony összetevői és a Doctrine ORM alapján, i
Más rendszert használ? A Microweber egy nyílt forráskódú drag and drop CMS és online bolt. A Microweber forráskódja a GitHubon található. Ez az útmutató megmutatja neked
Más rendszert használ? A Grav egy nyílt forráskódú, lapos fájlú CMS, amelyet PHP-ben írtak. A Grav-forráskód nyilvánosan a GitHubon található. Ez az útmutató megmutatja, hogyan t
Más rendszert használ? A Grav egy nyílt forráskódú, lapos fájlú CMS, amelyet PHP-ben írtak. A Grav-forráskód nyilvánosan a GitHubon található. Ez az útmutató megmutatja, hogyan t
Más rendszert használ? Az Automad egy nyílt forráskódú fájl alapú tartalomkezelő rendszer (CMS) és PHP nyelven írt sablonmotor. Az Automad forráskód i
A Raneto egy ingyenes, nyílt forráskódú tudásbázis, amely Node.js-re épül, és amely könnyen beállítható és használható, valamint könnyen adminisztrálható. Kategóriák és oldalak ar
Más rendszert használ? A Thelia egy nyílt forráskódú eszköz e-üzleti webhelyek létrehozására és PHP-ben írt online tartalmak kezelésére. Thelia forráskód i
Más rendszert használ? Az október 1.0 CMS egy egyszerű és megbízható, ingyenes és nyílt forráskódú tartalomkezelő rendszer (CMS), amely a Laravel keretrendszerre épül.
Más rendszert használ? Az ImpressPages CMS 5.0 egy egyszerű és hatékony, ingyenes és nyílt forráskódú, felhasználóbarát, MVC-alapú tartalomkezelő rendszer (CMS).
Más rendszert használ? A CMS Made Simple 2.2 egy rugalmas és bővíthető, ingyenes és nyílt forráskódú tartalomkezelő rendszer (CMS), amelyet intelligensen terveztek
A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.
Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.
Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.
Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.
Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…
Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.
Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.
Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.
Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.
Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket